Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция 6_Оператор цикла с параметром.doc
Скачиваний:
0
Добавлен:
24.08.2019
Размер:
75.78 Кб
Скачать

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 (процедура прерывает работу программы).

Контрольные вопросы и задания

  1. Дайте определение понятию «цикл».

  2. Какие действия необходимо выполнить для организации цикла?

  3. Какова структура оператора цикла с параметром? Как выполняется цикл с параметром?

  4. Какого типа должны быть параметр цикла, его начальное и конечное значения в цикле с параметром?

  5. Могут ли параметр цикла, его начальное и конечное значения в цикле с параметром в языке Pascal быть разных типов? Обоснуйте ответ.

  6. Может ли один цикл быть вложен внутрь другого? Если да, то какова глубина этой вложенности?

  7. Сколько раз исполнится фрагмент программы?

For i := 1 to -1 Do k:=k*i;

  1. Сколько раз исполнится фрагмент программы?

For i := -1 to 1 Do k:=k*i;

  1. Сколько раз исполнится фрагмент программы?

For i := 1 downto -1 Do k:=k*i;