
- •Оглавление
- •Комбинированный урок №6
- •Оператор цикла с параметром
- •Var I:integer;
- •Var I,n,s:integer;
- •Var I,n,s:integer;
- •Примеры алгоритмов циклической структуры
- •Var s, X, Pr : Real;
- •Var y,Ymin : Real;
- •X : Integer;
- •Var k,m : Byte;
- •V : Real;
- •Var k,n : Byte;
- •Процедуры ограничения и прерывания цикла
- •Контрольные вопросы и задания
Var k,m : Byte;
V : Real;
Begin
M:=8;
V:=1.0;
For K:=1 To M Do
V:=V * Exp(K/2*Ln(M))/(2*(M-1));
Write('V=',V:10)
End.
Пример
6.
Составить
программу
вычисления
суммы
Program Cikl_5;
Uses Crt;
Var k,n : Byte;
A,S : Real;
Begin
ClrScr;
Read(N,A);
S:=0;
For K:=1 To N Do S:=S + Sin(A*K) / K;
Write('S=', S:10)
End.
Процедуры ограничения и прерывания цикла
Данные процедуры применяются внутри операторов цикла с параметром или условием.
Continue; - ограничение цикла,
Break; - прерывание цикла.
Continue и Break позволяют производить действия не для всех операторов внутри цикла. Действие Continue заключается в передаче управления на начало цикла, при этом контролируется условие выхода из цикла. Действие Break заключается в передаче управления оператору, следующему за последним оператором цикла, при этом не контролируется условие выхода из цикла. Во вложенных циклах Continue и Break действуют только на цикл в котором они записаны. Приведем пример использования данных процедур:
. . .
For i := 1 to 3 do
begin
Write( 'Введите ПАРОЛЬ' );
Readln(S); {S и Parol - переменные одного типа}
If S = Parol Then Break {выход из цикла}
else
if i <> 3 Then Continue; {переход на новую итерацию цикла}
Writeln( 'Доступ к программе ЗАПРЕЩЕН. Нажмите Enter' );
Writeln(' );
Readln;
Halt; {процедура прерывания выполнения программы }
end;
. . .
Комментарий к программе: Если пароль введен правильно (введенное значение переменной S совпало с заранее заданным значением переменной Parol, то выполняется процедура Break, т.е. происходит выход из цикла For на оператор, следующий после end, и программа продолжает работу.
Если пароль введен неправильно, то проверяется условие i<>3. Если это условие выполняется, то процедура Continue передает управление оператору For и цикл выполняется еще раз, при этом параметр цикла i увеличивается на 1. Если пароль введен неправильно трижды (I=3), то выводится сообщение «Доступ к программе ЗАПРЕЩЕН. Нажмите Enter » и выполняется процедура Halt (процедура прерывает работу программы).
Контрольные вопросы и задания
Дайте определение понятию «цикл».
Какие действия необходимо выполнить для организации цикла?
Какова структура оператора цикла с параметром? Как выполняется цикл с параметром?
Какого типа должны быть параметр цикла, его начальное и конечное значения в цикле с параметром?
Могут ли параметр цикла, его начальное и конечное значения в цикле с параметром в языке Pascal быть разных типов? Обоснуйте ответ.
Может ли один цикл быть вложен внутрь другого? Если да, то какова глубина этой вложенности?
Сколько раз исполнится фрагмент программы?
For i := 1 to -1 Do k:=k*i;
Сколько раз исполнится фрагмент программы?
For i := -1 to 1 Do k:=k*i;
Сколько раз исполнится фрагмент программы?
For i := 1 downto -1 Do k:=k*i;