Занятие 22 из 24
Прогресс сохраняется в этом браузере
Занятие 22. Циклы
В Pascal три типа циклов: for — с заранее известным числом повторений, while — с проверкой условия в начале, repeat … until — с проверкой условия в конце.
1. Прочитайте слова и словосочетания, переведите, запомните их значения.
| Цикл |
Цикл с пара́метром
Цикл с предусло́вием
Цикл с постусло́вием
|
| Счётчик | Счётчик ци́кла |
📖 Теория
Цикл for (с параметром)
for счётчик := от to до do
оператор;
// или с убыванием:
for счётчик := от downto до do
оператор;
Цикл while (с предусловием)
while условие do
оператор;
// Тело цикла выполняется, пока условие истинно.
Цикл repeat (с постусловием)
repeat
оператор;
until условие;
// Тело выполняется хотя бы один раз; цикл прекращается, когда условие становится истинным.
▶ Запустить Тренажёр: цикл for — таблица квадратов
Запусти и убедись, что программа выводит квадраты чисел от 0 до 10.
ForSquares.pas
program ForSquares;
var x, y: integer;
begin
for x := 0 to 10 do
begin
y := x * x;
writeln(x, ' -> ', y);
end;
end.
▶ Запустить Тренажёр: цикл while
Тот же результат, но с циклом while.
WhileSquares.pas
program WhileSquares;
var x, y: integer;
begin
x := 0;
while x <= 10 do
begin
y := x * x;
writeln(x, ' -> ', y);
x := x + 1;
end;
end.
▶ Запустить Тренажёр: вложенные циклы — таблица умножения
Цикл внутри цикла — классический способ построить таблицу.
MultTable.pas
program MultTable;
var x, y, p: integer;
begin
for x := 1 to 5 do
begin
for y := 1 to 5 do
begin
p := x * y;
write(p, ' ');
end;
writeln;
end;
end.
Что выведет? Тренажёр: что выведет программа?
Цикл с убыванием — обрати внимание на начальное и конечное значения.
program.pas
var i: integer;
begin
for i := 5 downto 1 do
writeln(i);
end.
Расставь по порядку Тренажёр: расставь строки цикла
Это цикл repeat-until, выводящий чётные числа от 0 до 10. Расставь строки в правильном порядке. Обрати внимание — что должно повторяться на каждой итерации, а что выполняется один раз.
var n: integer;
begin
n := 0;
repeat
writeln(n);
n := n + 2;
until n > 10;
end.
Заполни пропуск Тренажёр: заполни цикл
Программа должна посчитать сумму чисел от 1 до 100. Цикл for прибавляет к переменной s каждое следующее i. Подсказки в комментариях справа.
var i, s: integer;
begin
s := 0;
for i := 1 to do // введите число
s := s i; // введите арифметический оператор
writeln(); // введите имя переменной
end.