1: Циклические структуры
2: Алгоритмическая структура ЦИКЛ (повторение) Цикл - алгоритмическая конструкция, в которой многократно выполняется одна и та же последовательность шагов, называемая телом цикла. Каждое однократное исполнение цикла называется итерацией. Если тело цикла будет выполнено N раз, говорят, что произведено N итераций.
3: Виды циклов: Циклы с заранее известным количеством повторений (цикл с параметром или арифметический) Циклы с неизвестным количеством повторений (итерационный)
4: Цикл с параметром (арифметический) Если при истинности условия цикл продолжается, то такое условие называется условием продолжения цикла, т. е. 0 Если при истинности условия цикл завершается, то такое условие называется условием завершения цикла. В этом случае цикл продолжается до тех пор, пока условие не станет истинным.
5: Цикл с параметром (арифметический) Блок-схема алгоритмической структуры
6: Пример использования арифметического цикла Постановка задачи: Вывести все четные числа, находящиеся в интервале от 10 до 80
7: Пример использования арифметического цикла Блок-схема алгоритма
8: Итерационные циклы с неизвестным количеством повторений: Цикл с предусловием циклы с проверкой условия перед выполнением очередной итерации Цикл с постусловием циклы с проверкой условия после выполнения очередной итерации
9: Цикл с предусловием
10: Цикл с постусловием
11: Пример цикла с предусловием Постановка задачи Подсчитать количество цифр в числе
12: Пример цикла с предусловием Блок-схема алгоритма
13: Пример цикла с постусловием Постановка задачи Осуществить ввод положительных чисел, пока не будет введен 0 и определить максимальное из них
14: Пример цикла с постусловием
15: Цикл FOR . . . NEXT
16: For To Step шаг Exit For Next Начало, конец, шаг - выражения. Шаг может быть отрицательным. Если шаг не указан, то он равен 1 Exit For – выход из цикла
17: Dim I As Integer, N As Integer, K As Integer, L As Integer KInputBox(Введите число , Возведение в степень ) NInputBox(Введите степень , Возведение в степень ) L1 For I1 To N LLK Next I MsgBox Результат & L
18: Dim MyString As String, Stra As String, Strb As String Dim I As Integer Возврат коретки , перевод строки Stra Chr(13) & Chr(10) MyString "Самая обаятельная и привлекательная " For I 1 To 10 Strb Strb & Stra & MyString Next I MsgBox Strb
19: Вывод нечетных чисел Dim I As Integer For I 2 To 10 Step 2 MsgBox I, vbExclamation, "Нечетные числа" Next I
20: Пример использования функции Asc( ) - преобразование символов в числа
21: функция ASC преобразование символов в числа функция ASC преобразование символов в числа For J Asc("А") To Asc("Я") Добавление в строку каждой буквы функция Chr преобразование кода числа в символ stra stra & Chr(J) & " " Next J MsgBox stra, , "Alphabet« Возврат каретки , перевод строки strb Chr(13) & Chr(10) Или использование константы - vbCrLf
23: Вложенные циклы
24: Печать алфавита в окне MsgBox по 8 символов в строке Dim I As Integer, J As Integer, K As Integer Dim stra As String, strb As String, MyString As String strb Chr(13) & Chr(10) For I Asc("А") To Asc("Я") Step 8 stra stra & Chr(I) & Chr(I 32) & " " For J 1 To 7 K I J stra stra & Chr(K) & Chr(K 32) & " " Next J stra stra & strb Next I MyString MsgBox(stra, , "Вывод символов в несколько строк ")
26: Оператор цикла While … Wend Оператор While … Wend выполняет последовательность инструкций пока заданное условие имеет значение ИСТИНА While условие Инструкции Wend
27: Пример Бросается игральная кость до тех, пор пока не выпадет 6 очков. При выпадение 6 очков игра заканчивается и выдается сообщение, указывающее сколько попыток было совершено. Dim Attempt As Integer Dim Score As Integer Randomize Score Int(6Rnd1) Attempt1 While Score
28: Условие проверяется до начала цикла Do While условие Блок Инструкций Exit Do Блок Инструкций Loop Do Until условие Блок Инструкций Exit Do Блок Инструкций Loop
29: Условие проверяется после цикла Do Блок Инструкций Exit Do Блок Инструкций Loop While Do Блок Инструкций Exit Do Блок Инструкций Loop Until