ВЛОЖЕННЫЕ ОПЕРАТОРЫ ЦИКЛА.
ВОПРОСЫ
1. Сколько раз будут выполнены инструкции между begin и end?
а) for i:=j to j+1 do
begin
…
end;
б) k:=0;
for i:=2 downto k do
begin
…
end;
2. Чему будет равно значение переменной x после выполнения инструкций?
x:=0;
for i:=-5 to 0 do
n:=i*i;
x:=x+n;
3. Что будет выведено на экран в результате выполнения инструкций?
а) n:=5;
x:=0;
for i:=1 to n do x:=i;
writeln(x);
б) for i:=1 to 5 do
for j:=1 to 5 do write(‘*’);
4. Сколько звездочек будет выведено на экран в результате выполнения инструкций?
for i:=1 to 5 do
for j:=i to 5 do write(‘*’);
5. Что нужно изменить в последовательности инструкций из вопроса 3(б), чтобы на экран были выведены 5 строк по 5 звездочек?
Если телом цикла является циклическая структура, то такие циклы называют вложенными. Цикл, содержащий в себе другой цикл, называют внешним, а цикл, содержащийся в теле другого цикла, называют внутренним. Внешний и внутренний циклы могут быть трех видов: циклами с предусловием while, циклами с постусловием repeat или циклами с параметром for.
Правила организации внешнего и внутреннего циклов такие же, как и для простого цикла каждого из видов. Но при программировании вложенных циклов необходимо соблюдать следующее дополнительное условие: все операторы внутреннего цикла должны полностью располагаться в теле внешнего цикла.
Пример 9.
Вычислить значение суммы .
Решение:
program pr4;
var s,a,x:real;
k,n:integer;
begin
readln(a,x);
s:=0;
for k:=1 to 15 do
for n:=1 to 10 do
s:=s+exp(k*ln(a))+exp(n*ln(x));
writeln(‘s=’,s:8:2)
end.