Такой цикл, в котором происходит вычисление функции при изменении аргумента в заданных пределах, можно организовать и другими (возможно, более логичными и удобными) способами, а именно:
1. При помощи конструкции
WHILE <условие>
<выражение>
WEND
Здесь <выражение> выполняется тогда и до тех пор, пока истинно
<условие>. Причем <выражение> может состоять из нескольких операторов (строк).
Для заданной функции и аргументов запишем:
WHILE x <= 10 'пока X<=10 выполнять следующее:
y = x * SIN(x) ' вычисляем Y
PRINT USING " x =##.# y =##.###"; x; y ' вывод на экран результатов
x = x + .2
'увеличиваем значение переменной X на шаг dХ =0,2
WEND
'конец блока строк, которые следует выполнять, пока X<=10
Обратите внимание на то, что начальное значение переменной
x, равное нулю, явно не задано! Это сделано потому, что Бейсик, встречая в тексте программы новую переменную, значение которой не задано явно,
присваивает этой переменной нулевое значение. Здесь и далее мы будем пользоваться этой особенностью Бейсика.
2. При помощи конструкции
DO WHILE <условие>
<выражение>
LOOP
Здесь, как и в предыдущем случае, <выражение> выполняется тогда и до тех пор, пока истинно
<условие>. И <выражение> может состоять из нескольких операторов (строк).
Для заданной функции и аргументов запишем:
DO WHILE x <= 10 ' пока X<=10 выполнять следующие команды (строки):
y = x * SIN(x)
'
эту строку,
PRINT USING " x =##.# y =##.###"; x; y ' эту,...
x = x + .2
'и эту
LOOP
' конец блока строк, которые следует выполнять, пока X<=10
3. При помощи конструкции
DO UNTIL <условие>
<выражение>
LOOP
Это - аналог DO WHILE ....LOOP, только <выражение> выполняется тогда и до тех пор, пока не станет истинно
<условие>. И <выражение> может состоять из нескольких операторов (строк).
Для заданной функции и аргументов запишем:
DO UNTIL x > 10
y = x * SIN(x)
PRINT USING " x =##.# y =##.###"; x; y
x = x + .2
LOOP
4. При помощи явного задания цикла конструкцией типа
FOR <п. ц.> = <нач. п. ц.> TO
<кон. п. ц.> STEP <шаг п.ц.>
<выражение>
NEXT <п. ц.>
Здесь <п. ц.> - переменная цикла, любая переменная числового типа, которая при выполнении цикла изменяется от
<нач. п. ц.>, начального значения переменной цикла до
<кон. п. ц.>, конечного значения переменной цикла с шагом
<шаг п.ц.>.
<Выражение> может состоять из нескольких операторов (строк) и часто называется "тело цикла".
Для заданной функции и аргументов запишем:
REM задаем цикл по Х, в котором Х изменяется от 0 до 10 с шагом 0.2
FOR x = 0 TO 10 STEP 0.2
y = x * SIN(x)
PRINT USING; " x =##.# y =##.###"; x; y
NEXT x
то же на Fortran то же на C то же на Pascal
аналог на JavaScript