Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник_Палагута.doc
Скачиваний:
10
Добавлен:
13.11.2019
Размер:
6.6 Mб
Скачать

7.3. Організація циклічних обчислювальних процесів

Досить часто в програмі потрібно одні й ті ж дії виконати декілька разів, організувати обчислювальний процес, що повторюється. Такий обчислювальний процес називається ітераційним або циклічним. Як і у багатьох мовах програмування у мові JavaScript є декілька операторів для організації циклічних обчислювальних процесів:

  • оператор for;

  • оператор циклу з передумовою while;

  • оператор циклу з постумовою do . . . while.

Оператор циклу for надає можливість виконати певну послідовність дій заздалегідь відому кількість разів, має таку загальну форму (синтаксис):

for (i=початкове_значення; умова; вираз_приросту) { оператори_циклу }

Механізм дії оператору for такий:

Крок 1. Змінній циклу і привласнюється початкове значення, що може бути константою (літералом), змінною, результатом обчислення виразу.

Крок 2. Перевіряється істинність деякої умови. Якщо умова істинна, здійснюється перехід до кроку 3, у зворотному випадку оператор for завершує свою роботу.

Крок 3. Виконуються оператори циклу.

Крок 4. Перемінна циклу і змінюється у відповідності до виразу приросту.

Крок 5. Перехід по кроку 2.

Розглянемо такий приклад застосування оператору for. Web – сторінка вміщує сценарій, під час виконання якого можна ввести суму первинного внеску на рахунок банку та кількість періодів. У результаті виконання сценарію розраховується сума на рахунку в банку з урахуванням того, що кожний період залишок суми на рахунку збільшується на 20% (рис. 7.3).

Рисунок 7.3 - Результат виконання сценарію розрахунку суми на рахунку в банку із використанням оператору for

Код HTML – документа:

<HTML>

<BODY> <FONT size=4>

Наша пропозиція - 20% річних <br>

<SCRIPT type="text/javascript">

var sr = Number(prompt("Введіть суму первинного внеску",""));

document.write("Сума первинного внеску: "+sr+" грн."+"<br>");

var p = Number(prompt("Введіть кількість періодів",""));

document.write("Кількість періодів: "+p+" рр."+"<br>");

for (i=1; i<=p; i++)

sr=sr*1.2;

document.write("Сума на рахунку"+sr+" грн."+"<br>");

</SCRIPT>

</FONT>

</BODY>

</HTML>

За допомогою оператору циклу з передумовою while можна виконати деякі дії до тих пір, доки певна умова є істинною. Загальна форма оператору while:

While (умова) { оператори_циклу }

Наприклад, для розрахунку факторіалу числа Х можна створити сценарій:

<SCRIPT type="text/javascript">

var x = Number(prompt("Введіть число Х",""));

var y=1;

var i=1;

while (i<=x)

{ y=y*i;

i++};

document.write(x+"! = "+y);

</SCRIPT>

Оператор циклу з постумовою do . . . while, як і попередній оператор, надає можливість повторити деякі оператори доти, доки істинна логічна умова. На відміну від оператору while оператори циклу do . . . while завжди виконуються хоча б один раз, далі перевіряється істинність логічної умови, після чого, якщо умова істинна, виконується ще одна ітерація операторів циклу. Загальна форма оператору:

Do { оператори_циклу } while (умова)

Задачу розрахунку Х! можна вирішити також із застосуванням оператору do . . . while. Сценарій у такому випадку виглядатиме так:

<SCRIPT type="text/javascript">

var x = Number(prompt("Введіть число Х",""));

var y=1;

var i=1;

do {

y=y*i;

i++} while (i<=x);

document.write(x+"! = "+y);

</SCRIPT>