Цикл з післяумовою

2. Алгоритми з повторенням і розгалуженням

2.10. Цикл з післяумовою

Оператор циклу з післяумовою має такий вигляд:

Repeat

<тіло циклу>;

Until <умова зупинки циклу>;

Або

Повторювати

<тіло циклу>;

ДокиНе <умова зупинки циклу>;

Цей оператор відрізняється від циклу з передумовою тим, що перевірка умови проводиться після чергового виконання тіла циклу. Це забезпечує виконання тіла циклу хоча б один раз.

Зверніть увагу на те, що даний оператор циклу допускає наявність кількох операторів у тілі циклу, тому

службові слова Begin i End не потрібні.

Цикл з післяумовою

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

У протилежному випадку оператори тіла циклу виконуються ще раз, після чого знову перевіряється виконання умови. Приклад

Скласти програму для планування купівлі в магазині товарів на суму, що не перевищує задану величину.

Розв’язування

Позначимо через x та k ціну та кількість товару, через p – задану граничну

суму, через s – вартість покупки.

Початкове значення загальної вартості покупки s дорівнює нулю. Значення граничної суми вводиться з клавіатури.

Необхідно повторювати запит ціни й кількості вибраного товару, визначати його вартість, додавати її до загальної вартості та виводити результат на екран доти, поки вартість не перевищить граничну суму p.

Program Exemple;

Var x, k, p, s:integer;

Begin

Write(‘Гранична сума – -‘);

Readln(P);

S:=0;

Repeat

Write(‘Введіть ціну товару та його кількість :’);

Readln(x, k);

S:=s + k*x;

Writeln(‘ вартість покупки дорівнює ‘,s)

Until s>p;

Writeln(‘вартість покупки перевищила граничну суму!’);

End.

Питання для самоконтролю:

1. У яких випадках використовується цикл з післяумовою та які особливості його запису?

2. У чому подібність і відмінність циклів з умовами?

3. Виберіть правильну відповідь.

При виконанні оператора повторення Repeat

А) спочатку обчислюється логічний вираз і, в залежності від результату, виконуються або не виконуються оператори тіла циклу;

Б) спочатку виконуються оператори тіла циклу, потім обчислюється логічний вираз, результат якого впливає на повторне виконання операторів.

4. Визначити значення змінної s після виконання таких операторів:

S:=0; i:=1;

Repeat

S:=s+5 div і;

I:=i-1

Until i<=1;

5. Що буде надруковано в результаті виконання такої послідовності операторів:

I:=1;

Repeat

Write (i,’ ‘);

I : =i + 2

Until i>19;

6. Визначити значення змінних s та і після виконання таких операторів:

S:=0; i:=1;

Repeat

S : =S + i ;

I:=i+1

Until i>10;


1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 votes, average: 5.00 out of 5)
Loading...


Ви зараз читаєте: Цикл з післяумовою