Это цикл с предусловием. Проверяется условие продолжения цикла. Делай, пока условие истинно. Иначе цикл заканчивается. Тело цикла может не выполниться ни разу.
Private Sub Command3_Click()
n!=InputBox (“Введите n”)
k% = 1:
P = 1
Do While k <= n
P = P * k
k = k + 1
Loop
Print n; “!=”; P
End Sub
Начало подпрограммы
Вводим число n
Начальное значение счетчика равно 1
Начальное значение произведения = 1
Проверка условия: если k<=n, то
Выполняем тело цикла:
Произведение (факториал) умножается
на очередное значение счетчика
Счетчик k увеличивается на 1
Возвращаемся к началу цикла
Печатаем значение факториала Р
Конец подпрограммы.
Запустите программу и проверьте факториал для значений 3!=6. Найдите максимальное число, для которого VB вычисляет факториал. (170!)
Цикл Do Until…Loop
Это цикл с предусловием. Проверяется условие выхода из цикла.
Делай до выполнения условия. Тело цикла может не выполниться ни разу.
n = InputBox («Введите n»)
k% = 1:
Do Until k > n
P = P * k
k = k + 1
Print n; “!=”; P
Задача 1. Составьте программу табулирования функции на заданном отрезке с заданным шагом. (Табулирование это вычисление значений функции с заданным шагом).
, [4,8] с шагом 0,5
Решение:
Составим эскиз, чтобы на экране получился проект:
Составим программу для 5 кнопки.
Private Sub Command1_Click()
Print " x", " y"
X = 4
Do
Y = 1 / 2 * Cos(8 + (Log(X) + 1 / Tan(X)))
Print X, Format(Y, "0.0000")
X = X + 0.5
Loop While X <= 8
End Sub
Private Sub Command2_Click()
Print " x", " y"
X = 4
Do
Y = 1 / 2 * Cos(8 + (Log(X) + 1 / Tan(X)))
Print X, Format(Y, "0.0000")
X = X + 0.5
Loop Until X > 8
End Sub
Private Sub Command3_Click()
Print " x", " y"
X = 4
Do While X <= 8
Y = 1 / 2 * Cos(8 + (Log(X) + 1 / Tan(X)))
Print X, Format(Y, "0.0000")
X = X + 0.5
Loop
End Sub
Private Sub Command4_Click()
Print " x", " y"
X = 4
Do Until X > 8
Y = 1 / 2 * Cos(8 + (Log(X) + 1 / Tan(X)))
Print X, Format(Y, "0.0000")
X = X + 0.5
Loop
End Sub
Private Sub Command5_Click()
Print " x", " y"
For X = 4 To 8 Step 0.5
Y = 1 / 2 * Cos(8 + (Log(X) + 1 / Tan(X)))
Print X, Format(Y, "0.0000")
Next X
End Sub
Private Sub Command6_Click()
Cls
End Sub
Запись Format(y, "0.0000")означает, что формат вывода переменной y четыре знака после запятой. Количество целых не ограничивается.
Если компьютер не считает последнее значение х = 8, то следует, учитывая "машинную точность", в условии добавить одну тысячную, например, x <= 8.001