Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Paskal_metodichka.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
807.42 Кб
Скачать

Тема 4 Использование циклических структур. Оператор цикла с параметром

Оператор цикла с параметром удобно использовать, когда необходимо выполнить оператор заранее известное число раз. Существует два варианта оператора цикла с параметром

for к:=n1 to n2 do S;

или

for к:=п1 downto n2 do S;

где к – параметр цикла;

п1 и п2 – выражения, задающие начальное и конечное значения параметра цикла соответственно;

S простой или составной оператор (тело цикла).

Тип параметра цикла обязательно должен совпадать с типом начального и конечного значений цикла. Можно использовать любой из стандартных скалярных типов, кроме действительного.

Шаг параметра цикла к при выполнении оператора цикла с параметром для целого типа равен 1 (для цикла to) и –1 (для цикла downto).

Следует запомнить и то, что для обоих вариантов записи цикла с параметром справедливо: если начальное и конечное значения равны, то тело цикла (оператор S) выполнится один раз.

Если в цикле необходимо выполнить несколько операторов, то пользуются составным оператором.

Для оператора цикла с параметром имеются некоторые ограничения.

  • Оператор цикла с параметром применяется, если число повторений тела цикла заранее известно.

  • Войти в цикл можно только через его начало, а выйти – либо при достижении параметром цикла его конечного значения, либо при выполнении оператора break, который прекращает выполнение цикла, причем следующим будет выполняться оператор, расположенный за циклом.

  • Для каждого значения параметра цикл выполняется только 1 раз.

  • Значения параметра цикла запрещено изменять операторами в теле цикла.

Пример1. Вычислить сумму квадратов натуральных чисел с 1 до 10.

S := 0;

for i:=1 to 10 do s := s+sqr (i);

Примечание. Произведение n последовательных натуральных чисел обозначают n! ( произносится n факториал), то есть .

Пример 2.

Вычислить 8!.

P:=1;

for i:=2 to 8 do p:=p*i;

Заметим так же, что параметр цикла может и не использоваться в теле цикла, так что основное его назначение – это управление числом повторений цикла.

Пример 3

 Значение y=xn, где n>=0 – целое, можно вычислить по следующему алгоритму: предварительно положить y=1, а затем n раз домножить это значение на x:

Readln(n);

Readln(x);

y:=1;

for i:=1 to n do y:=y*x;

Как видно, здесь параметр цикла i служит лишь для того, чтобы тело цикла (оператор y:= y* x) выполнилось нужное число раз.

Пример 4.

Вычислить сумму .

sum:= 0;

for i:=1 to 12 do sum:=sum+(sqr (i)+1)/(i*i*i);

Пример 5.

Вычислить произведение .

P:= 1;

for i:=1 to 7 do p:=p*i/( i* i-2* i+5);

В теле цикла с параметром среди операторов может находиться и оператор цикла, такие циклы называются вложенными (внешний и внутренний циклы).

При использовании вложенных циклов необходимо помнить, что тело внутреннего цикла должно находиться внутри внешнего.

Пример выполнения задания 4

Вычислить значение выражения

.

program lab4;

uses crt;

var  c,p,sum:real;

k,i:integer;

begin p:=1;

for k:=1 to 5 do

begin sum:=0; a:=1; b:=1;

for i:=1 to k do

begin a:=a*2; {вычисляем 2i}

b:=b*I; {вычисляем i!}

sum:=sum+a/b; {вычисляем сумму}

end;

 p:=p*(sqr(k+2)+sum; {вычисляем произведение}

end;

writeln(‘p=’,p:0:2);

readkey;

end.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]