Лекция: Option Explicit
Sub PR1()
Dim a As single, b as single, pi as single, x As single
Dim i as integer, y as single
a = 0.62: b = 0.98: i = 1: pi = 3.14159
For x = –pi to pi Step pi/6
y=a*sin(b*x)^2
Cells(i,1) = x: Cells(i,2)= y: i = i + 1
Next х
End Sub
П р и м е р 2.Рассмотрим алгоритм Евклида – алгоритм нахождения наибольшего общего делителя двух натуральных чисел – а и b(рис. 5.2). Данный алгоритм относится к циклической структуре с предусловием.
После ввода исходных данных (блок 2)
1) вычисляется значение условия (блок 4);
2) проверяется истинность условия:
если условие (блок 4) является истинным, то выполняются действия, расположенные между блоками 4и9, после этого вновь осуществляется переход к проверке условия (блок 4);
если условие (блок 4) является ложным, то действия, расположенные между блоками 4и9, не выполняются ни разу и циклзавершается.
Исходный алгоритм реализуется программой с помощью оператора
While – Wend, используемого в цикли-ческих структурах с неизвестным числом повторений:
Программа с операторомWhile – Wend:
Option Explicit
Sub PR2()
Dim a As integer, b as integer, i as integer
а = val(inputBox(“Введите а”))
b = val(inputBox(“Введите b”)): i = 0
While a >< b
if a> b then a = a – b else b = b – a
i = i +1
Wend
Cells(1,1) = a: Cells(1,3) = i
End
Пример 3. Составить алгоритм и программу вычисления значений
семейства характеристик для аргумента x, изменяющегося
от xn = – π до xk = π с шагом ∆x = π/6 при значениях a от an = 2,5 до ak = 3,5
с шагом ∆а = 0,5, где b = 0,68.
Схема алгоритма вычисления значений приведена на рис. 5.3, алгоритм относится к типу «цикл в цикле».
Ввод исходных данных происходит в блоке 2. По внешнему контуру цикла в алгоритме вводятся значения а функции у, по внутреннему – значения х в соответствии с законами изменения параметра цикла а = а + ∆а внешнего контура и параметра цикла внутреннего контура цикла по х с проверкой условия окончания цикла (блоки 3 и 5 соответственно). Блоки 6 (вычисление функции у) и 7 (вывод на экран полученного результата внутреннего контура цикла) образуют тело цикла.
Процедура, использующая вложенный цикл, имеет следующий вид: