
_pascal_pptx_17465.pptx
- Количество слайдов: 22
ОПЕРАТОРЫ ЦИКЛА В PASCAL
Цикл - это специальная конструкция языка, позволяющая запрограммировать многократное выполнение определённого блока команд. Сам блок команд называется телом цикла.
В языке Паскаль имеется три вида операторов цикла: Оператор цикла с параметром; Оператор цикла с предусловием; Оператор цикла с постусловием.
Для всех операторов цикла характерна следующая особенность: 1. 2. 3. 4. Повторяющиеся вычисления записываются всего лишь один раз. Вход в цикл возможен только через его начало. Переменные оператора цикла должны быть определены до входа в циклическую часть. Необходимо предусмотреть выход из цикла: или по естественному его окончанию, или по оператору перехода.
ОПЕРАТОР ЦИКЛА С ПАРАМЕТРОМ (ЦИКЛ «ДЛЯ» )
FOR i: =a TO b DO <оператор> или FOR i: =a DOWNTO b DO <оператор> «Для параметра i, меняющегося от a до b выполнить оператор» i – параметр цикла, a – начальное значения параметра цикла b – конечное значения параметра цикла Для составного оператора: Begin Операторы End;
ПРИМЕР: 1: Var i: Char; Begin For i: =‘a’ to ‘d’ do write(i); End. 2: Var i: Integer; Begin For i: =10 downto 1 do begin writeln(i); writeln; end; End.
Задача: Вычислить S=1+2+3+ … +n Program zadacha; var n, s, i: integer; Begin cls; write(‘введите натуральное число n=’); readln(n); s: =0; for i: =1 to n do s: =s+i; writeln(‘сумма=’, s) End.
Особенности цикла с параметром: 1. 2. 3. 4. 5. Используется только тогда, когда заранее известно, сколько раз должна повторится циклическая часть программы. Параметр цикла не может быть типа Real. В теле цикла нельзя изменять переменную «параметр цикла» (i). При выходе из цикла значение переменной «параметр цикла» (i) является неопределенным. Если необходимо включить в тело цикла несколько операторов, необходимо применить составной оператор.
Сколько раз выполняется цикл? a : = 1; for i: =1 to 3 do a : = a+1; a : = 1; for i: =3 to 1 do a : = a+1; 3 раза a= 4 0 раз a= 1 a : = 1; for i: =1 downto 3 do a : = a+1; 0 раз a= 1 a : = 1; for i: =3 downto 1 do a : = a+1; 3 раза a= 4
ОПЕРАТОР ЦИКЛА С ПРЕДУСЛОВИЕМ (ЦИКЛ «ПОКА» )
While <условие> Do <оператор> "Пока истинно условие, выполнять оператор". Оператор выполняется до тех пор пока логическое выражение (условие) имеет значение истина; прекращает выполняться, если логическое выражение принимает значение ложь.
ПРИМЕР: Var i: Integer; begin i: =10; While i>5 do begin writeln (i); i: = i - 1; end; End.
Особенности оператора While. . . Do. . . : 1. 2. 3. 4. Процесс повторяется, пока логическое выражение - «истина» . Оператор (тело цикла) может не выполнится ни одного раза. Чтобы цикл завершился, необходимо, чтобы в теле цикла изменялись значения переменных, входящих в условие. Если необходимо включить в тело цикла несколько операторов, необходимо применить составной оператор.
Сколько раз выполняется цикл? a : = 4; b : = 6; while a < b do a : = a + 1; 2 раза a=6 a : = 4; b : = 6; while a < b do a : = a + b; 1 раз a = 10 a : = 4; b : = 6; while a > b do a : = a + 1; 0 раз a=4 a : = 4; b : = 6; while a < b do a : = a - 1; зацикливание
ОПЕРАТОР ЦИКЛА С ПОСТУСЛОВИЕМ (ЦИКЛ «ДО» )
Repeat <оператор 1>; <оператор 2>; . . . Until <условие>; "Выполнять оператор 1, оператор 2, … до выполнения условия" Оператор выполняется до тех пор пока логическое выражение (условие) имеет значение ложь, прекращает выполняться, если логическое выражение принимает значение истина.
ПРИМЕР: Var i: Integer; begin i: =1; Repeat writeln (i); i: = i + 1; Until (i = 10); End.
Особенности оператора Repeat…Until. . . : 1. 2. 3. 4. Процесс повторяется, пока логическое выражение - «ложь» . Оператор (тело цикла) выполняется хотя бы один раз. Чтобы цикл завершился, необходимо, чтобы в теле цикла изменялись значения переменных, входящих в условие. Тело цикла может содержать несколько операторов, при этом не нужны операторные скобки Begin. . End.
Сколько раз выполняется цикл? a : = 4; b : = 6; repeat a : = a + 1 until a > b; 3 раза a=7 a : = 4; b : = 6; repeat a : = a + b until a > b; 1 раз a = 10 a : = 4; b : = 6; repeat a : = a + b until a < b; a : = 4; b : = 6; repeat b : = a - b until a < b; a : = 4; b : = 6; repeat a : = a + 2 until a < b; зацикливание 2 раза b=6 зацикливание
ВЛОЖЕННЫЕ ЦИКЛЫ Циклы могут быть вложены один в другой. При использовании вложенных циклов необходимо составлять программу таким образом, чтобы внутренний цикл полностью укладывался в циклическую часть внешнего цикла.
ЗАДАЧА Написать программу вычисления n! = 1*2*3* … *n. Написать программу возведения действительного числа a в натуральную степень n.