Работа с циклами
Print "Это "; Print "тело “; Print "цикла"; Print " "; метка m 1: Print "Это " ; Print "тело " ; Print "цикла" ; Print " " ; иди к оператору, помеченному меткой m 1 Это тело цикла . .
Go. To - оператор безусловного перехода m 1 - метка.
Private Sub Command 1_Click() m 1: Print "Это "; Print "тело "; Print "цикла"; Print " "; Go. To m 1 End Sub
Оператор цикла For Цикл For : Next For начальное_значение переменной-счeтчик To конечное_значение переменной-счeтчик [Step величина шага] инструкции Next [переменная-cчeтчик]
Задача: Распечатать пары чисел - 101 1000 102 990 103 980 104 970 ……. 109 920 110 910 Private Sub Command 1_Click() For a = 101 To 110 Print a; 1000 - 10 * (a - 101) Next a End Sub
Вычисление квадратов чисел от 0 до 1 с шагом 0. 001: Private Sub Command 1_Click() For a = 0 To 1. 00001 Step 0. 001 Print a; a * a Next a End Sub For a = 1 To 0 Step -0. 001
Синтаксис оператора For: For переменная = выражение 1 To выражение 2 [ Step выражение 3 ] операторы ……………. . Next [ переменная ]
Exit FOR For counter = start To end [Step step] [statements] [Exit For] [statements] Next [counter]
Private Sub Command 1_Click() Dim x, y, xn, xk, dx As Single xn = CSng(Text 1) xk = CSng(Text 2) dx = CSng(Text 3) Print "Таблица значений функции" For x = xn To xk Step dx y = Sin(x) Print x; y Print Next x End Sub
Private Sub Command 1_Click() Dim x, y As Single, i, n As Integer n = CInt(Text 1) Print "Таблица значений функции" For i = 1 To n x = CSng(Input. Box("Введите Х")) y = Sin(x) Print x; y Print Next i End Sub
Повтор набора инструкций Do : Loop Синтаксис оператора Do …. Loop: Do операторы ……………. Loop
Do : Loop с завершением Do While условие инструкции Loop Do While f <= 9 Do Until условие Инструкции Loop Do Until f > 9
Private Sub Command 1_Click() Dim sum As Integer, mas(5) As Integer, к As Integer mas(0) = 5: mas(1) = 6: mas(2) = 7: mas(3) = 6: mas(4) = 7 к = 0: sum = 0 ' здесь цикл повторяется до тех пор, пока значение ' переменной остается < 5 Do While к < 5 sum = sum + mas(к) к = к + 1 Loop lbl 1. Caption = sum End Sub
Private Sub Command 2_Click() Dim sum As Integer, mas(5) As Integer, к As Integer mas(0) = 5: mas(1) = 6: mas(2) = 7: mas(3) = 6: mas(4) = 7 sum = 0: к = 0 Do Until к = 5 sum = sum + mas(к) к = к + 1 Loop lbl 2. Caption = sum End Sub
Оператор Do …. Loop While Do операторы ……………. Loop While условие продолжения работы цикла • Do Loop While f <= 9
Оператор Do …. Loop Until Do операторы ……………. Loop Until условие завершения работы цикла Do Loop Until f > 9
Оператор Exit Do Private Sub Command 1_Click() Print "Начало счета"; f = 3 Do Print f; If f >= 9 Then Exit Do f = f + 2 Loop Print "Конец счета" End Sub • Начало счета 3 5 7 9 Конец счета