Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
4 while, repeat.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
186.88 Кб
Скачать

72

Л а б о р а т о р н а р о б о т а № 4

Організація обчислень з використанням умовних операторів циклу

1 Мета роботи

Вивчити умовні оператори циклу While і Repeat. Набути навичок їхнього використання при складенні циклічних програм.

2 Основні теоретичні відомості

2.1 Оператор циклу з передумовами While

Формат оператора:

While <логічний вираз> do

begin

<блок операторів>

end;

Алгоритм роботи оператора наведено на рис.4.1.

...

Рисунок 4.1 – Алгоритм роботи оператора While

Доки значення логічної умови істина (true) – буде виконуватися блок операторів. Вихід з циклу здійснюється у тому разі, якщо умова стане хибною (false). Очевидно, що усередині блоку операторів мають бути оператори, котрі впливають на значення логічного виразу, інакше циклічний процес буде нескінченним.

Блок операторів може складатися лише з одного оператора. У цьому разі операторні дужки begin і end не потрібні.

Приклад 1. Обчислити добуток непарних чисел від 101 до 150 включно.

. . .

s:=0; n:=101;

while n<=150 do

begin s:=s+n;

n:=n+2;

end;

Приклад 2. Обчислити таблицю значень функції y=cos x, де x змінюється від 0 до 2 з кроком 0,1.

x:=0;

while x<=2 do

begin y:=cos (x);

Str(x:3:1,sx); // перетворення числової змінної x в рядкову sx

Str(y:6:3,sy); // перетворення числової змінної y в рядкову sy

Memo1.Lines.Add(sx+’ | ‘+sy);

x:=x+0.1;

end;

2.2 Оператор циклу з післяумовою Repeat

Формат оператора Repeat:

Спочатку виконується блок операторів, котрі складають цикл, потім перевіряється умова - і циклічний процес повторюється доти, поки значення логічного виразу буде хибним (false). Як тільки значення логічного виразу стане істиним (true) - здійсниться вихід із циклу. Таким чином, кожного разу оператори циклу виконуватимуться принаймні один раз.

Приклад 3. Обчислити добуток парних чисел від 10 до 14 включно.

p:=1; n:=10;

Repeat

p:=p*n;

n:=n+2;

until n>14;

Приклад 4. Скласти фрагмент програми, що визначає чи є число n – простим.

Фрагмент програми має вигляд:

…..

k:=1;

Repeat

k:=k+1

until n mod k=0;

if k=n

then ShowMessage(' - Просте число')

else ShowMessage(' - Складене число');

end.

2.3 Особливості використання операторів циклу з умовами

Між оператором циклу з передумовою While і оператором циклу з післяумовою Repeat є три основні відмінності:

1 В операторі Repeat перевірка умови виходу з циклу виконується наприкінці, а не з початку циклу, як це відбувається в операторі While, тому блок операторів неодмінно виконується принаймні одноразово.

Результати виконання цих операторів при розв’язанні однієї й тієї задачі можуть відрізнятися в тому разі, якщо під час виконання програми значення умови (логічного виразу) відразу будуть такими, за яких блок операторів виконуватися не повинен.

2 В операторі While вихід з циклу здійснюється, якщо значення логічного виразу буде хибним (false), а в операторі Repeat – Until - якщо воно істиним (true).

3 В операторі Repeat – Until операторні дужки begin і end навіть за наявності у блоці декількох операторів є непотрібні, а в операторі While у цьому разі вони мають бути наявними обов’язково.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]