Тема 7. Циклические алгоритмы и их реализация на языке Visual Basic.
Циклы предназначены для многократного выполнения одного или нескольких операторов. Visual Basic предлагает две конструкции:
цикл For. . .Next дает возможность устанавливать число проходов цикла, а цикл Do... Loop завершается при выполнении заданного условия.
Цикл For. . .Next является самой простой конструкцией:
For Счетчик = Начальное_значение То Конечное_значение [Step Шаг]
Операторы
Next [Счетчик]
В начале выполнения цикла значение Счетчик устанавливается в Начальное значение. При каждом проходе переменная Счетчик увеличивается на 1 или на величину шага. Если она достигает или становится больше (меньше, при отрицательном шаге), чем Конечное значение, то цикл завершается и выполняются следующие операторы. Разность между начальным и конечным значением, деленная на величину шага, составляет число проходов.
Задача 1. Вычислить сумму целых цисел от 1 до N.
Dim s As Long
Dim k As Integer
Private Sub Form_Load()
Show
n= InputBox ("введите значениеN")
s=0
For k=1 to n
s=s+k
Next k
Print "s="; s
End Sub
Задание. Напишите программу сложения четных и нечетных чисел.
Цикл, управляемый в начале: Do While <Условие> <Операторы> Loop
Условие проверяется в начале цикла. Если условие не выполняется, то и тело цикла не выполняется.
Задача 2. Угадывание чисел, загаданных компьютером.
Dim a As Integer
Dim b As Integer
Dim k As Integer
Private Sub Form_Load()
Show
Randomize
a = Int(Rnd * 100 - 1)
b = InputBox("Введите число в диапазоне от 1 до 100", , , 3000, 4000)
Do While b <> a
If b > a Then
Print "введено число"; b; "Оно больше загаданного компьютером"
End If
If b < a Then
Print "введено число"; b; "Оно меньше загаданного компьютером"
End If
k = k + 1
b = InputBox("Введите число в диапазоне от 1 до 100", , , 3000, 4000)
Loop
Print "Вы отгадали число. Оно равно"; b
Print "Было сделано"; k + 1; "попыток"
End Sub
Copyright © 2005. Петрова Людмила Борисовна