
Программирование в VB_Net_1_семестр
.pdf
Кафедра |
Условный оператор |
|
Кафедра |
Условный оператор |
|
||
информатики |
|
информатики |
|
||||
|
УГАТУ |
|
УГАТУ |
||||
|
|
|
|
|
|||
2 конструкция блочная |
|
d = b^2-4*a*c |
|
|
|||
If |
<лог_выр> Then |
|
if d >= 0 then |
|
|
||
|
<Оператор_1> |
|
x1 = (-b + Math.Sqrt(d)) / (2 * a) |
|
|||
Else |
|
x2 = (-b - Math.Sqrt(d)) / (2 * a) |
|
||||
|
<Оператор_2> |
|
Console.WriteLine(Format(x1,"0.000") & " |
" & _ |
|||
End If |
|
|
Format(x2,"0.000")) |
|
|||
|
|
|
|
|
|||
если логическое выражение принимает значение |
else |
|
|
|
|||
Console.WriteLine("Действительных корней нет") |
|||||||
True, то выполняется <Опер_1>, если – False, |
|||||||
|
|
|
|
||||
то выполняется <Опер_2>. |
|
End If |
|
|
|
||
|
Программирование и основы алгоритмизации курс 1 2014 г. |
81 |
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
82 |
|
Кафедра |
Условный оператор |
|
Кафедра |
Условный оператор |
|
||
информатики |
|
информатики |
|
||||
|
УГАТУ |
|
УГАТУ |
||||
|
|
|
|
|
|||
Один условный оператор может входить в |
|
Другая запись: |
|
|
|||
состав другого, например: |
|
If |
<лог_выр_1> Then |
|
|
||
If |
F_1 Then |
|
|
|
|||
|
|
<Оператор_1> |
|
|
|||
|
If F_2 Then |
|
|
|
|
||
|
|
|
ElseIf <лог_выр_2> |
Then |
|
||
|
<Оператор_1> |
|
|
|
|||
|
|
|
<Оператор_2> |
|
|
||
|
Else : <Оператор_2> |
|
|
|
|
||
|
|
|
Else |
|
|
||
|
End If |
|
|
|
|
||
|
|
|
<Оператор_3> |
|
|
||
|
Else : <Оператор_3> |
|
|
|
|
||
|
|
|
|
|
|
||
End If |
|
End If |
|
|
|||
|
|
|
|
|
|||
|
Программирование и основы алгоритмизации курс 1 2014 г. |
83 |
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
84 |

Кафедра |
Условный оператор |
|
Кафедра |
Оператор выбора |
|
информатики |
|
информатики |
|
||
|
УГАТУ |
|
УГАТУ |
||
|
|
|
|
||
Фрагмент программного кода: |
|
Структуру разветвляющегося алгоритма можно |
|||
If x > 0 Then |
|
реализовать с помощью: |
|
||
Console.WriteLine _ |
|
• выбора – выбор одного варианта из нескольких |
|||
|
(”Значение х положительно”) |
|
действий в зависимости от значения некоторой |
||
Elseif x = 0 Then |
|
величины (селектора). |
|
||
|
|
|
|
||
|
Console.WriteLine _ |
|
|
|
|
|
(”Значение х равно нулю”) |
|
|
|
|
|
Else |
|
|
|
|
|
Console.WriteLine _ |
|
|
|
|
|
(”Значение х отрицательно”) |
|
|
|
|
End If |
|
|
|
|
|
|
Программирование и основы алгоритмизации курс 1 2014 г. |
85 |
Программирование и основы алгоритмизации курс 1 2014 г. |
86 |
|
Кафедра |
Оператор выбора |
|
Кафедра |
Оператор выбора |
|
информатики |
|
информатики |
|
||
|
УГАТУ |
|
УГАТУ |
||
|
|
|
|
||
Select Case Селектор |
|
Select Case |
b^2-4*a*c |
|
|
Case Диапазон значений _1 |
|
Case Is < 0 |
|
|
|
операторы, выполняемые при попадании Селектора |
Console.WriteLine ("действительных корней нет“) |
||||
в Диапазон значений _1 |
|
Case Is = 0 |
|
|
|
Case Диапазон значений _2 |
|
Console.WriteLine (Format(-b / (2 * a), "0.000")) |
|||
Операторы, выполняемые при попадании Селектора |
Case Is > 0 |
|
|
||
в Диапазон значений _2 |
|
x1=(-b + Math.Sqrt(d)) / (2 * a) |
|
||
[Case Else |
|
x2=(-b - Math.Sqrt(d)) / (2 * a) |
|
||
Операторы, выполняемые при непопадании |
|
Console.WriteLine (Format(x1, "0.000") & " |
" _ |
||
|
|
|
|
||
Селектора ни в один из указанных диапазонов] |
|
|
& Format(x2, "0.000")) |
|
|
End Select |
|
End Select |
|
|
|
|
|
|
|
||
|
Программирование и основы алгоритмизации курс 1 2014 г. |
87 |
Программирование и основы алгоритмизации курс 1 2014 г. |
88 |

Кафедра |
|
Оператор выбора |
|
Кафедра |
Оператор выбора |
|
||||
информатики |
|
информатики |
|
|||||||
|
|
|
УГАТУ |
|
|
УГАТУ |
||||
|
|
|
|
|
|
|
|
|
||
Селектором может быть переменная, константа |
Select Case k |
|
||||||||
|
|
или выражение. |
|
|
|
Case 1 |
|
|||
Диапазон значений можно задать: |
|
|
Console.WriteLine (" = 1“) |
|
||||||
|
Case 2, 3 |
|
||||||||
• |
|
простым перечислением их через запятую |
|
|
||||||
|
|
|
Console.WriteLine (" = 2 или 3“) |
|
||||||
|
|
(Case 3,5,9), |
|
|
|
|
|
|||
|
|
|
|
|
Case 4 To 6 |
|
||||
• |
|
с помощью ключевого слова To (Case 1 To 9). |
|
|||||||
|
|
Console.WriteLine (" >= 4 и <= 6 “) |
|
|||||||
• |
|
если в Диапазоне значений необходимо |
|
|
|
|||||
|
|
Case |
Is >= 9 |
|
||||||
|
|
использовать операции отношения, то такой |
|
|
||||||
|
|
|
|
|
|
|
||||
|
|
диапазон записывается |
с помощью |
|
|
Console.WriteLine (" >= 9 “) |
|
|||
|
|
ключевого слова Is. |
|
|
Case Else : Console.WriteLine (" нет попадания“) |
|||||
|
|
|
Программирование и основы алгоритмизации курс 1 2014 г. |
89 |
End Select |
90 |
||||
|
|
|
|
|
Программирование и основы алгоритмизации курс 1 2014 г. |
|||||
Кафедра |
|
|
Циклы |
|
|
Кафедра |
Циклы |
|
||
информатики |
|
|
|
информатики |
|
|||||
|
|
|
|
|
УГАТУ |
|
|
УГАТУ |
||
|
|
|
|
|
|
|
|
|
||
Алгоритм циклической структуры должен |
|
Алгоритм циклической структуры должен |
|
|||||||
|
|
содержать: |
|
|
|
|
содержать: |
|
||
• |
Подготовку цикла – задание начальных значений |
• |
Тело цикла – операторы, которые выполняются |
|||||||
|
переменных цикла перед первым его |
|
||||||||
|
|
|
при различных значениях переменных цикла; |
|
||||||
|
выполнением; |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|||
• |
|
Заголовок цикла (управление циклом) – |
|
• |
Изменение значений переменных цикла |
|
||||
|
|
проверку условия окончания цикла или |
|
|
перед его новым повторением (в заголовке |
|
||||
|
|
перехода на начало тела цикла |
|
|
или в теле цикла) |
|
||||
|
|
|
Программирование и основы алгоритмизации курс 1 2014 г. |
91 |
|
|
Программирование и основы алгоритмизации курс 1 2014 г. |
92 |

|
Кафедра |
|
Цикл с параметром |
|
Кафедра |
|
Цикл с параметром |
|
|||
|
информатики |
|
информатики |
|
|||||||
|
|
|
УГАТУ |
|
|
|
УГАТУ |
||||
|
|
|
|
|
|
|
|
|
|
||
|
Структуру циклического алгоритма можно |
|
Цикл повторяется пока |
|
|
||||||
|
|
реализовать с помощью |
|
|
|
|
|||||
|
|
|
|
|
|
значение параметра |
|
|
|||
|
|
|
|
|
|
|
|
|
|
||
|
• |
Цикла с параметром |
i = in, ik, [h] |
|
|
|
(счетчика) цикла i |
i = in, ik, [h] |
|
||
|
|
(заданным числом |
|
|
|
лежит в интервале |
|
||||
|
|
|
|
|
|
|
|
||||
|
|
повторений - счетный |
|
|
|
|
|
|
|||
|
|
|
|
|
|
[in, ik]; |
|
|
|||
|
|
цикл ) – обозначает |
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
||
|
|
повторение некоторых |
тело цикла |
|
|
|
in и ik вычисляются |
тело цикла |
|
||
|
|
|
|
|
|
|
|
||||
|
|
действий указанное |
|
|
|
|
только один раз в |
|
|
||
|
|
количество раз. |
|
|
|
|
начале цикла. |
|
|
||
|
|
|
|
|
|
|
|
|
|
||
|
|
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
93 |
|
|
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
94 |
|
Кафедра |
|
Цикл с параметром |
|
Кафедра |
|
Цикл с параметром |
|
|||
|
информатики |
|
информатики |
|
|||||||
|
|
|
УГАТУ |
|
|
|
УГАТУ |
||||
|
|
|
|
|
|
|
|
|
|
||
|
Формат цикла с параметром |
|
|
Шаг может быть как положительным, так и |
|
||||||
|
|
|
|
|
|
|
|||||
|
For Счетчик = S1 To S2 [Step Шаг] |
|
|
отрицательным числом: |
|
|
|||||
|
|
|
Тело цикла |
|
|
• |
Если Шаг равен единице, то конструкция |
|
|||
|
Next [Счетчик] |
|
|
|
Step Шаг может быть опущена. |
|
|
||||
|
|
|
• |
Если Шаг положителен, то S1 <=S2, иначе тело |
|||||||
|
|
|
|
|
|
||||||
• |
S1 и S2 – выражения, определяющие начальное и |
|
цикла не выполнится ни разу. |
|
|
||||||
|
конечное значение счетчика; |
|
|
• |
Если Шаг отрицателен, то S1 >=S2, иначе тело |
||||||
• |
Тело цикла – многократно выполняемые |
|
|
цикла не выполнится ни разу. |
|
|
|||||
|
операторы. |
|
|
Значения S1, S2, шаг вычисляются перед |
|
||||||
|
|
|
|
|
|
|
|||||
Параметр цикла (Счетчик), начальное (S1) и |
|
|
входом в цикл и внутри цикла изменяться |
|
|||||||
|
конечное значения (S2) должны быть одного типа. |
|
не могут!!! |
|
|
||||||
|
|
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
95 |
|
|
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
96 |

|
Кафедра |
|
Цикл с параметром |
|
|
|
|
|
Кафедра |
Цикл с параметром |
|
|
|
|
|||||||
|
информатики |
|
|
|
|
|
информатики |
|
|
|
|
||||||||||
|
|
|
|
|
|
|
УГАТУ |
|
|
|
|
|
|
|
|
|
УГАТУ |
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Пример. После выполнения фрагмента программы |
|
|
|
|
|
|
После выполнения фрагмента программы |
|
|
|
|
||||||||
|
|
|
|
|
|
Заголовок цикла |
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
k = 0 : s = 0 |
|
|
|
|
|
k = 0 : s = 0 |
|
|
i |
k |
s |
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
0 |
|
|
|||
|
|
|
|
For i = 1 To 5 |
|
|
|
|
|
|
|
|
|
For i = 1 To 5 |
|
|
|
|
|
||
|
|
|
|
|
Тело цикла |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
1 |
0,5 |
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
k = k + 1 |
|
|
|
|
|
|
|
|
|
k = k + 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
2 |
1 |
|
|
||
|
|
|
|
Next i |
|
Изменение значения |
|
|
|
|
|
|
|
s = s + 0.5 |
|
|
3 |
3 |
1,5 |
|
|
|
|
|
|
|
переменной цикла i |
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
4 |
4 |
2 |
|
|
|||||
|
|
|
|
|
|
обеспечивает сам |
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
s = s + 0.5 |
|
оператор цикла |
|
|
|
|
|
|
|
Next i |
|
|
5 |
5 |
2,5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
значение переменной s стало равно _____. |
|
|
|
|
|
значение переменной s стало равно _____. |
|
|
|
|
||||||||
|
|
|
|
|
|
Ответ: 0,5 |
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Программирование и основы алгоритмизации курс 1 2014 г. |
97 |
|
|
|
|
|
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
|
98 |
|
|
|
Кафедра |
Цикл с параметром |
|
|
|
|
Кафедра |
Цикл с параметром |
|
|
|
|
||||
|
информатики |
|
|
|
|
информатики |
|
|
|
|
||||||
|
|
|
|
УГАТУ |
|
|
|
|
|
|
|
|
УГАТУ |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Один цикл может входить в состав другого |
|
|
|
|
После выполнения фрагмента программы |
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
i |
j |
k |
|
|
|
|
For <i> = <in> To <ik> |
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
k = 0 |
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|
For <j> = <jn> To <jk> |
|
|
|
|
|
|
For i = 1 To 3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
1 |
1 |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
<Тело цикла> |
|
|
|
|
|
|
For j = 1 To i |
|
|
2 |
1 |
2 |
|
|
|
|
|
|
|
|
|
|
k = k + 1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2 |
3 |
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
Next j |
|
|
|
|
|
|
Next j |
|
|
3 |
1 |
4 |
|
|
|
|
Next i |
|
|
|
|
|
|
Next i |
|
|
|
2 |
5 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
3 |
6 |
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
Внутренний цикл выполнится ik – in + 1 раз |
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
значение переменной k стало равно _____ |
. |
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Программирование и основы алгоритмизации курс 1 2014 г. |
99 |
|
|
|
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
|
100 |
|
|

Кафедра |
Цикл с параметром |
|
Кафедра |
|
Циклы с условием |
|
|
информатики |
|
информатики |
|
||||
|
УГАТУ |
|
|
УГАТУ |
|||
|
|
|
|
|
|
||
Какие значения k будут выведены после выполнения |
|
Циклы с условием используются в тех |
|
||||
фрагментов программ |
|
|
|
||||
k = 0 |
k = 0 |
k = 0 |
|
|
случаях, когда число повторений тела |
|
|
For i = 1 To 3 |
For i = 1 To 3 |
For i = 1 To 3 |
|
цикла заранее неизвестно. |
|
||
|
For j = 1 To 2 |
For j = 1 To 2 |
|
|
|||
For j = 1 To 2 |
|
|
|
|
|||
k = k + 1 |
k = k + 1 |
|
|
|
|
|
|
k = k + 1 |
|
Такой цикл продолжает работу пока |
|
||||
Вывод k |
Next j |
|
|
|
|
|
|
Next j |
|
|
выполняется (или не выполняется) |
|
|||
Next j |
Вывод k |
|
|
|
|||
Next i |
|
|
условие окончания цикла. |
|
|||
Next i |
Next i |
|
|
|
|||
Вывод k |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
6 |
123456 |
246 |
|
|
|
|
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
101 |
|
|
Программирование и основы алгоритмизации курс 1 2014 г. |
102 |
|
Кафедра |
Циклы с условием |
|
|
|
Циклы с условием |
|
|
информатики |
|
|
|
|
|||
|
УГАТУ |
|
|
УГАТУ |
|||
|
|
|
|
|
|
||
Если условие окончания цикла |
|
|
|
|
|
||
проверяется перед выполнением тела |
|
|
|
Цикл с предусловием |
|
||
|
|
|
|
|
|||
цикла, то такие циклические структуры |
|
|
|
Повторение действий |
|
||
называют циклами с предусловием |
|
|
|
происходит в зависимости |
|||
(«Выполнять пока»). |
|
|
|
|
от значения логического |
|
|
|
|
|
|
|
|
|
|
Если проверка условия происходит после |
|
|
|
выражения, которое |
|
||
выполнения тела цикла – циклами |
|
|
|
проверяется в начале цикла |
|||
с постусловием («Выполнять до тех |
|
|
|
|
|
||
пор, пока») |
|
|
|
|
|
|
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
103 |
|
|
Программирование и основы алгоритмизации курс 1 2014 г. |
104 |

|
Циклы с условием |
|
Кафедра |
|
Циклы с условием |
|
|
|
|
информатики |
|
|
|||
|
УГАТУ |
|
|
УГАТУ |
|||
|
|
|
|
|
|
||
|
Цикл с постусловием |
|
В VB.Net такие циклы образуются с |
||||
|
|
помощью конструкций |
|
|
|||
|
|
|
|
|
|||
|
Повторение действий |
|
|
Do |
|
|
|
|
|
|
|
|
|
||
|
происходит в |
|
|
|
…. |
|
|
|
|
|
|
|
|
|
|
|
зависимости от |
|
|
Loop |
|
|
|
|
|
|
|
|
|
||
|
значения логического |
|
Существует 4 вида таких циклических |
||||
|
выражения, которое |
|
|||||
|
|
конструкций, их синтаксис определяется |
|||||
|
проверяется в конце |
|
|||||
|
|
типом проверяемого условия и местом |
|||||
|
|
|
|||||
|
цикла |
|
его расположения. |
|
|
||
|
Программирование и основы алгоритмизации курс 1 2014 г. |
105 |
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
106 |
|
Кафедра |
Цикл с предусловием |
|
Кафедра |
|
Цикл с предусловием |
|
|
информатики |
|
информатики |
|
|
|||
|
УГАТУ |
|
|
УГАТУ |
|||
|
|
|
|
|
|
||
|
|
|
Фрагмент программы: |
|
Подготовка |
||
|
|
|
|
цикла |
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
X = 1 : Y = 2 : S =0 |
|
|
|
|
|
|
|
|
|
Заголовок |
|
|
|
|
|
Do While X <= Y |
|
цикла |
|
|
|
|
|
|
|
|
|
|
|
|
Тело |
S = S + X |
|
|
|
|
|
|
цикла |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
X = X + 1 |
|
Изменение значения |
|
|
|
|
|
|
переменной цикла X |
|
|
|
|
|
|
Loop |
|
|
|
|
|
тело цикла будет выполнено _____ раз |
|
Ответ: 2 раза |
||
|
Программирование и основы алгоритмизации курс 1 2014 г. |
107 |
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
108 |

Кафедра |
Цикл с предусловием |
|
Кафедра |
|
Цикл с постусловием |
|
|||
информатики |
|
информатики |
|
|
|||||
|
УГАТУ |
|
|
УГАТУ |
|||||
|
|
|
|
|
|
|
|
||
Фрагмент программы: |
|
|
|
|
|
|
|
||
X = 1 : Y = 2 : S =0 |
|
|
|
|
|
|
|
||
Do Until |
X <= Y |
While |
X > Y |
|
|
|
|
|
|
S = S + X |
|
|
|
|
|
|
|
|
|
X = X + 1 |
|
|
|
|
|
|
|
|
|
Loop |
|
|
|
|
|
|
|
|
|
тело цикла будет выполнено _____ раз |
|
ни разу |
|
|
|
|
|
||
Программирование и основы алгоритмизации курс 1 |
2014 г. |
109 |
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
110 |
|||
Кафедра |
Цикл с постусловием |
|
Кафедра |
Сравнение операторов циклов |
|
||||
информатики |
|
информатики |
|
||||||
|
УГАТУ |
|
УГАТУ |
||||||
|
|
|
|
|
|
|
|
||
Фрагмент программы: |
|
Подготовка |
Фрагмент программы вычисления факториала n! |
||||||
|
цикла |
||||||||
|
|
|
|
|
|
|
|
|
|
|
X = 1 : Y = 2 : S = 0 |
|
|
Цикл с |
|
Цикл с |
Цикл с |
|
|
|
|
|
параметром |
предусловием |
постусловием |
|
|||
|
|
|
|
|
|
||||
|
Do |
|
Заголовок |
|
|
|
|
|
|
|
|
|
цикла |
n = 5 |
|
n = 5 |
n = 5 |
|
|
Тело |
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
цикла |
S = S + X |
|
|
p = 1 |
|
p = 1 |
p = 1 |
|
|
|
|
|
|
|
|||||
|
|
|
For i = 1 to n |
i = 1 |
i = 1 |
|
|||
|
|
|
|
|
|
||||
Изменение |
X = X + 1 |
|
|
p = p * i |
Do While i <= n |
Do |
|
||
|
|
|
|
|
|
|
|
|
|
значения |
Loop Until X > Y |
|
|
Next i |
|
P = p * i |
P = p * i |
|
|
переменной |
|
|
|
|
i = i + 1 |
i = i + 1 |
|
||
цикла X |
|
|
|
|
|
|
|
||
тело цикла будет выполнено _____ раз |
Ответ: 2 раза |
|
|
Loop |
Loop Until |
i > n |
|||
|
|
|
|
||||||
Программирование и основы алгоритмизации курс 1 |
2014 г. |
111 |
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
112 |

Кафедра |
|
Цикл с предусловием |
|
|
Кафедра |
|
Досрочный выход из цикла |
|
|||
информатики |
|
(вложенные) |
|
|
|
информатики |
|
||||
|
|
|
|
УГАТУ |
|
|
УГАТУ |
||||
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|||
Фрагмент программы |
i |
j |
i <= 2 |
j <= i |
k |
|
|
|
|
||
|
|
|
Из тела цикла с параметром можно выйти |
||||||||
k = 0 : i = 1 |
|
|
1 |
|
+ |
|
0 |
||||
|
|
|
|
|
до окончания цикла с помощью |
|
|||||
Do While i <= 2 |
|
1 |
|
+ |
|
|
|
||||
|
|
|
|
|
|
|
|||||
j = 1 |
|
|
|
2 |
|
- |
1 |
|
оператора Exit For. |
|
|
|
|
|
|
|
|
|
|
|
|||
Do While j <= i |
2 |
|
+ |
|
|
Из тела цикла с условием можно выйти до |
|||||
k = k + 1 : j = j + 1 |
|
|
|
||||||||
|
1 |
|
+ |
|
|
окончания цикла с помощью оператора |
|||||
Loop |
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
||||
|
|
|
2 |
|
+ |
2 |
|
|
|
|
|
i = i + 1 |
|
|
|
|
|
Exit Do. |
|
||||
|
|
|
3 |
|
- |
3 |
|
|
|||
Loop |
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3 |
|
- |
|
|
|
|
|
|
значение переменной k? |
|
|
|
|
|
|
|
|
|||
Программирование и основы алгоритмизации |
курс 1 |
2014 г. |
|
113 |
|
|
Программирование и основы алгоритмизации курс 1 2014 г. |
114 |
|||
Кафедра |
Досрочный выход из цикла |
|
|
Кафедра |
|
Оператор GoTo |
|
||||
информатики |
|
|
информатики |
|
|||||||
|
|
УГАТУ |
|
|
УГАТУ |
||||||
|
|
|
|
|
|
|
|
|
|
||
Фрагмент программы |
|
|
|
A |
B |
Чтобы воспользоваться GoTo |
|
||||
|
A < B |
в VB .NET, необходимо присвоить метку |
|
||||||||
|
|
|
|
2 |
20 |
|
|||||
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
||
A = 2 : B = 20 |
|
|
|
+ |
6 |
|
соответствующей строке. |
|
|||
|
|
|
|
Первым символом метки является буква, а |
|
||||||
Do While A < B |
|
|
+ |
10 |
|
|
|||||
|
|
|
|
|
|
|
|||||
A = A + 4 |
|
|
|
|
последним – двоеточие. |
|
|||||
|
|
|
+ |
14 |
|
|
|||||
|
|
|
|
|
|
|
|
|
|
||
If A > 10 Then Exit Do |
|
|
|
|
Частое использование GoTo приводит к |
|
|||||
|
|
|
|
|
+ |
18 |
|
|
|||
Loop |
|
|
|
|
|
многократным передачам управления и |
|
||||
|
|
|
|
+ |
22 |
|
|
||||
|
|
|
|
|
|
порождает «спагетти-код», который трудно |
|
||||
|
|
|
|
|
- |
|
|
|
|||
|
|
|
|
|
|
|
читать и отлаживать. |
|
|||
Тело цикла выполнится |
3 разараз. |
|
|
|
|
||||||
Программирование и основы алгоритмизации |
курс 1 |
2014 г. |
|
115 |
|
|
Программирование и основы алгоритмизации курс 1 2014 г. |
116 |

Кафедра |
|
Оператор GoTo |
|
|
|
|
|
Кафедра |
Оператор GoTo |
|
||
информатики |
|
|
|
|
|
|
информатики |
|
||||
|
|
|
|
|
УГАТУ |
|
УГАТУ |
|||||
|
|
|
|
|
|
|
|
|
|
|||
Но в некоторые ситуациях GoTo делает программу |
Exit Do |
Вложенные циклы |
GoTo |
|||||||||
более понятной и логичной |
|
|
|
|
|
|
Dim i, j, k As Integer |
Dim i, j, k As Integer |
|
|||
Dim i, j, k As Integer |
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
For i = 1 To 10 |
|
For i = 1 To 10 |
|
|||
For i = 1 To 10 |
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
For j = 1 To 10 |
|
For j = 1 To 10 |
|
|||
For j = 1 To 10 |
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
k = i * j |
|
k = i * j |
|
|||
k = i * j |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
If k = 12 Then Exit Do |
If k = 12 Then GoTo M1 |
|||
If k = 12 Then GoTo M1 |
|
|
|
|
|
|
||||||
|
|
|
|
|
|
… |
|
|
|
|||
… |
|
|
|
|
|
|
|
|
|
… |
|
|
|
|
|
|
|
|
|
|
Next j |
|
|
|
|
Next j |
|
|
|
|
|
|
|
|
|
Next j |
|
|
Next i |
|
|
|
|
|
|
|
|
If k = 12 Then Exit Do |
Next i |
|
|
M1: |
продолжение программы |
|
|
|
|
Next i |
|
M1: продолжение |
|
|||
Программирование и основы алгоритмизации курс 1 |
2014 г. |
|
|
117 |
продолжение |
|
|
118 |
||||
|
|
Программирование и основы алгоритмизации курс 1 2014 г. |
||||||||||
Кафедра |
|
Типовые алгоритмы |
|
|
|
|
Кафедра |
Типовые алгоритмы |
|
|||
информатики |
|
|
|
|
|
информатики |
|
|||||
|
|
|
|
УГАТУ |
|
УГАТУ |
||||||
|
|
|
|
|
|
|
|
|
|
|||
Пример. Вычислить произведение |
|
|
|
|
|
Пример. Протабулировать функцию y = sin(x) |
|
|||||
|
|
|
n |
|
m |
i |
|
|
на отрезке [a,b] с шагом h. |
|
||
… |
|
|
|
|
|
|
|
|
|
|||
|
|
∏ ∏ |
|
|
For x = a To b Step h |
|
|
|||||
p = 1 |
|
|
|
|
2 |
|
|
|||||
|
|
i =1 |
j =1 1 + |
j |
|
|
|
|
||||
For i = 1 |
To n |
|
y = sin(x) |
|
|
|
||||||
|
|
|
|
|
|
|
|
|
||||
For j = 1 To m |
|
|
|
|
|
|
Console.WriteLine(Format(x,"0.00") & |
|
||||
p = p * i / (1 + j * j) |
|
|
|
|
|
|
|
|
" | " & _ |
|
||
Next j |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
||
Next i |
|
|
|
|
|
|
|
|
|
|
Format(y,"0.000")) |
|
… |
|
|
|
|
|
|
|
|
Next x |
|
|
|
Программирование и основы алгоритмизации курс 1 |
2014 г. |
|
|
119 |
Программирование и основы алгоритмизации курс 1 2014 г. |
120 |