Лекция Р_4
Тема: Указание повторения (циклы)
Цель: Познакомить учащихся с указаниями повторения, рассмотреть понятие цикла
План
1. Указание повторения с предусловием
2. Указание повторения с постусловием
3. Указание повторения с параметром (FOR — TO — DO).
1. Указание повторения с предусловием (цикл — while)
Указание повторения с предусловием — while предназначена для организации многократного исполнения группы указаний (тело цикла) до тех пор, пока остается истинной условие выполнения цикла.
Значение служебного слова while — пока
Указание повторенння с условием записывается в Виде:
While <условие> do
begin
<Указание 1>;
<Указание 2>;
……… ..;
<Указание N>;
end;
Например,
while и <4 do
begin
S = S + 1;
I = I + 1
end;
Вычисляется значение выражения-условия. Если условие истинно (принимает значение TRUE), то выполняется группа указаний (тело цикла). Выполнение программы снова возвращается к проверке условия цикла. Если условие заблуждение (принимает значение FALSE), то выполняется указание, которая находится после указания повторения с предусловием.
1. Если условие указанию повторения заблуждение при первой же проверке, то тело цикла не выполняется ни разу. Условие указания является условием вхождения в цикл.
2. Условие указания повторения с предусловием необходимо подбирать таким образом, чтобы в некоторый момент она изменила свое значение TRUE на FALSE, иначе возникнет ситуация «зацикливания программы».
3. Программисту необходимо самому позаботиться о необходимости увеличения (уменьшения) счетчика цикла на единицу. Это можно сделать следующим образом И = И + 1.
4. Вхождение в тело указания повторение возможно только через заголовок этого указания.
2. Указание повторения с постусловием (цикл- Repeat-until)
Указание повторения с постусловием предназначена для организации многократного использования группы указаний (тело цикла) до тех пор, пока условие выполнения цикла не станет истинной.
Repeat
<Указание 1>;
<Указание 2>;
……… ..;
<Указание N>;
Until <условие>;
Например,
Repeat
S = S + 1;
I = I + 1
Until I> = 4;
Служебные слова указания означают:
Repeat — повторять, until — пока.
Указание повторения с постусловием выполняется следующим образом. Сначала выполняются указания, которые входят в тело цикла. Затем вычисляется значение условия-выражения. Если условие заблуждение (т. е. имеет значение FALSE), то снова выполняются указания тела цикла. Если условие становится истинным (TRUE), то выполнение цикла прекращается и выполняется следующая указание программы.
1. Тело цикла, состоящее из группы указаний, не нужно брать в скобки (begin — end), поскольку служебные слова Repeat — until играют роль скобок.
2. Тело цикла в указании повторения с постусловием выполняется минимум один раз.
3. Условие указания является условием выхода из цикла.
4. Вхождение в тело указания повторением возможно только через заголовок этого указания.
В языке программирования Паскаль логическая функция KeyPressed контролирует нажатия клавиш. Если ни одна из клавиш нажата, эта функция принимает значение False, иначе — True.
Конструкция Repeat Until Key Pressed используется для организации паузы в процессе выполнения программы (до нажатия любой клавиши).
3. Указание повторения с параметром (FOR — TO — DO).
Указание повторения с параметром предназначена для организации многократного выполнения тела цикла для значений параметра цикла с некоторой упорядоченной дискретного множества. Указание повторения с параметром используют в тех случаях, когда заранее можно определить количество повторений выполнения указаний цикла.
Указание повторения с параметром записывается в виде:
1. for <параметр = выражение 1> to <выражение 2> do
begin
<Указание 1>;
<Указание 2>;
……… ..;
<Указание N>;
end;
2. for <параметр = выражение 1> downto <выражение 2> do
begin
<Указание 1>;
<Указание 2>;
……… ..;
<Указание N>;
end;
Параметр указания (счетчик, индекс) — это переменная скалярного (целого, символьного, логического или перечислений) типа, кроме действительного.Выражение 1 (начальный параметр указания) — это некоторая константа такого же типа, что и параметр указания.Выражение 2 (конечный параметр указания) — это некоторая константа такого же типа, что и параметр указания. Если в теле указания повторения с параметром необходимо выполнить только одно указание, то составленной указания begin… end использовать не нужно.
For <параметр = выражение 1> to <выражение 2> do
<Указание 1>;
Указание повторения с параметром выполняется следующим образом:
1. Указание For — to — do.
Например.
For i: = К to 1 do
begin
<Указание 1>;
<Указание 2>;
……… ..;
<Указание N>;
End;
Параметру цикла И присваивается начальное значение К. Он сравнивается с конечным значением 1.Если К <= 1, то выполняется тело указания повторения. Значение К автоматически увеличивается на 1 (то есть становится следующим элементом) и снова сравнивается со значением 1. Если во время проверки получим, что К> 1, то выполнение указания повторения прекращается и выполняется следующая после нее указание программы. Если во время первого сравнения К и 1 окажется, что К> 1, то тело указания не выполняется ни разу.
2. Указание For — downto — do.
Например.
For i: = К downto 1 do
begin
<Указание 1>;
<Указание 2>;
……… ..;
<Указание N>;
End;
Параметру цикла И присваивается начальное значение К. Он сравнивается с конечным значением 1.Если К> = 1, то выполняется тело указания повторения. Значение К автоматически уменьшается на 1 (то есть становится предыдущим элементом) и снова сравнивается со значением 1. Если во время проверки получим, что К <1, то выполнение указания повторения прекращается и выполняется следующая после нее указание программы. Если во время первого сравнения К и 1 окажется, что К <1, то тело указания не выполняется ни разу.
1. Указание повторения с параметром удобно использовать в тех случаях, когда предварительно можно определить количество повторений.
2. Параметр цикла не должен менять своего значения внутри тела указания повторения, хотя его можно использовать в любых выражениях указаний тела цикла.
3. Параметр цикла должен быть описанным в разделе переменных.
4. Значение параметра цикла после окончания выполнения указания повторения обладает конечным значением, поэтому перед повторным его использованием ему необходимо вновь присвоить новое начальное значение.
Пример использования указания повторения с предусловием
Задача 1.Найти сумму всех натуральных чисел от 1 до N.
Program Suma1;
Var I, N, S: integer;
Begin
Writeln ( ‘Введите количество натуральных чисел:’);
Write ( ‘N =’);
Readln (N)
I: = 1;
S: = 0;
While I <= N do
Begin
S = S + i;
i = i + 1
End;
Writeln ( ‘S =’, S)
End.
Пример использования указания повторения с постусловием
Задача 2.Найти сумму всех натуральных чисел от 1 до N.
Program Suma2;
Var I, N, S: integer;
Begin
Writeln ( ‘Введите количество натуральных чисел:’);
Write ( ‘N =’);
Readln (N)
I: = 1;
S: = 0;
Repeat
S = S + i;
i = i + 1
Until I> N
Writeln ( ‘S =’, S)
End.
Пример использования указания повторения с параметром
Задача 3.Найти сумму всех натуральных чисел от 1 до N.
Program Suma3;
Var I, N, S: integer;
Begin
Writeln ( ‘Введите количество натуральных чисел:’);
Write ( ‘N =’);
Readln (N)
S: = 0;
For i: = 1 to N do
S = S + i;
Writeln ( ‘S =’, S)
End.