5. Формати запису
1. for параметр:=<вираз1> to <вираз2> do
begin
<вказівка1>;
<вказівка2>;
…;
<вказівкаN>;
End;
2. for параметр:=<вираз1> downto <вираз2> do
begin
<вказівка1>;
<вказівка2>;
…;
<вказівкаN>;
End;
Тіло циклу
Тіло циклу
6. Характеристики
1. Даний оператор забезпечує виконання тіла циклу доти, поки не будуть
перебрані всі значення параметра циклу від вираз 1 (початкове значення) до
вираз 2 (кінцеве значення).
2. Параметр циклу – змінна скалярного типу (integer, byte, word, крім real;
булевого або символьного).
3. Значення параметра циклу послідовно збільшується (for … to) або
зменшується (for … downto) на одиницю при кожному повторі.
4. Початкове значення виразу 1 надає користувач.
5. Кількість повторів тіла циклу можна визначити за таблицею:
Оператор Вираз1<вираз2 Вираз1=вираз2 Вираз1>вираз2
For … to Вираз2-вираз1+1
раз
1 раз Не виконується
For … downto Не виконується 1 раз Вираз1-вираз2+1
раз
Цикл може не виконатися зовсім, але ніколи не може
зациклитися (бути вічним).
7. Цикл з післяумовою.
Формат запису
Repeat
<вказівка 1>;
<вказівка 2>;
…
< вказівка N>
Until <умова>;
Спочатку виконується тіло циклу, а потім
перевіряється умова виходу з циклу. Якщо
умова не виконується, виконання циклу йде ще
раз, якщо виконується – відбувається вихід з
циклу
Тіло циклу
8. Характеристики циклу
1. Використовується тоді, коли користувачу не відома
заздалегідь кількість повторень.
2. Цикл завжди виконується хоча б 1 раз.
3. Може виконуватися яку завгодно кількість разів.
4. Параметр циклу – змінна довільного типу.
5. Змінювати параметр циклу повинен програміст і як
завгодно.
6. Тіло циклу не потрібно брати у операторні дужки, бо
службові слова Repeat – Until відіграють роль дужок.
9. Цикл з передумовою.
Формат запису
while <умова> do
Begin
<вказівка 1>;
<вказівка 2>;
…
<вказівка N>;
End;
Перед кожним виконанням тіла циклу
обчислюється значення виразу умови. Якщо
умова виконується, то тіло циклу виконується;
якщо ні – відбувається вихід з циклу.
Тіло циклу
10. Характеристики циклу
1. Може виконуватися довільну кількість разів.
2. Параметром циклу може бути змінна довільного
типу.
3. Змінювати параметр циклу можна як завгодно.
Програмісту необхідно самому потурбуватися
про необхідність збільшення (зменшення
лічильника).
4. Цикл може не виконуватися жодного разу, якщо
до початку циклу змінна, що є його параметром,
не відповідає умові циклу.
5. Цикл може бути вічним, якщо параметр не
набуде значення закінчення циклу.
11. Вправи на закріплення
1. Якого значення набуде змінна після виконання команд:
• P:=4; while p<10 do p:=2*p+1; p:=p+1;
• P:=4; while p<10 do begin p:=2*p+1; p:=p+1; end;
2. Визначте результати виконання команд:
• a:=5; for i:=1 to 2 do a:=a*i-2; a:=a+1;
• a:=1; for i:=1 to 3 do begin a:=a+i: a:=a-1; end;
• S:=0; for n:=7 downto 4 do begin s:=s+n; s:=s+1;end;
3. Якого значення набуде змінна після виконання команд:
• S:=1; repeat s:=2*s+2 until s>10;
• P:=0; repeat p:=p+2 until p>6.