Вложенные циклы
Как называется команда, которая позволяет производить повторное выполнение действий?
На какие виды делится команда цикла?
Как называется цикл, в котором проверка условия стоит в начале?
Как называется цикл, в котором проверка условия стоит в конце?
Какая команда должна стоять перед итерационным циклом?
Какая команда должна находиться внутри итерационным циклом?
Чем отличается регулярный цикл от итерационного?
Как называется команда, которая позволяет производить повторное выполнение действий.
Команда цикла
На какие виды делится команда цикла
- Регулярный цикл
- Итерационный цикл
Как называется цикл, в котором проверка условия стоит в начале
А. Цикл с предусловием
Б. Цикл с постусловием
- А. Цикл с предусловием Б. Цикл с постусловием
Цикл с предусловием
Как называется цикл, в котором проверка условия стоит в конце
Цикл с постусловием
Какая команда должна стоять перед итерационным циклом
Команда присвоения начального значения параметра
Какая команда должна находиться внутри итерационным циклом
Команда изменения параметра
Чем отличается регулярный цикл от итерационного
В регулярном цикле определено количество повторений
Народная мудрость гласит:
«Лучше один раз увидеть, чем сто раз услышать».
Вложенные циклы
Вычислить значение функции
если X [300, 600] ∆ X = 100
Y [100, 800] ∆ Y = 100
В данной задаче необходимо вычислить значения функции b при одновременном изменении аргументов X и Y . Порядок изменения аргументов X и Y в данной задаче является независимым.
Существует возможность организовать цикл внутри тела другого цикла. Такой цикл будет называться вложенным циклом . Вложенный цикл по отношению к циклу в тело которого он вложен будет именоваться внутренним циклом , и наоборот цикл в теле которого существует вложенный цикл будет именоваться внешним по отношению к вложенному.
Вложенные циклы
Вложенные циклы
Внутри вложенного цикла в свою очередь может быть вложен еще один цикл, образуя следующий уровень вложенности и так далее. Количество уровней вложенности, как правило, не ограничивается.
Вложенные циклы
Рассмотрим алгоритмическую и программную реализацию задачи с внешним циклом по параметру X и оператором FOR , а внутренний цикл по параметру Y с оператором WHILE .
Вложенные циклы
Поскольку шаг изменения параметра внешнего цикла не равен 1, то в данном случае для использования оператора FOR необходимо перейти от цикла с фактическими параметрами X н, X к и X к циклу с формальными параметрами по числу повторений. Для этого определим число повторений N :
Вложенные циклы
Составим таблицу соответствия
Имя математической переменной
x
Переменная языка PASCAL
Тип переменной
y
x
b
R
y
х н
R
b
R
Xn
х к
х
R
Xk
i
R
dX
N
R
i
N
Int
y н
Int
y k
Yn
y
R
Yk
dY
R
R
Вложенные циклы
Составляем алгоритм
алг Vlogennyi _ cikl ( вещ x , y , b )
арг x, y
рез z
Вложенные циклы
Составляем алгоритм
нач вещ Xn , Xk , dX , Yn , Yk , dY
цел i , N
Xn:=300 Xk:=600 dX:=100 x:=Xn
N:=trunc((Xk-Xn)/dX)+1
Yn := 100 Yk := 800 dY := 100
Вложенные циклы
Составляем алгоритм
для i от 1 до N
нц
y := Yn
пока y
нц
b :=0.6* x /( y +0.3* x )
вывод [При x =], x ,[ и y =], y ,[ функция b =], b
y:=y+dY;
кц
x:=x+dX;
кц
кон
Вложенные циклы
алг Vlogennyi _ cikl ( вещ x , y , b )
арг x, y
рез z
нач вещ Xn , Xk , dX , Yn , Yk , dY
цел i , N
Xn:=300 Xk:=600 dX:=100 x:=Xn
N:=trunc((Xk-Xn)/dX)+1;
Yn := 100 Yk := 800 dY := 100
для i от 1 до N
нц
y := Yn
пока y
нц
b :=0.6* x /( y +0.3* x )
вывод [При x =], x ,[ и y =], y ,[ функция b =], b
y:=y+dY;
кц
x:=x+dX;
кц
кон
Вложенные циклы
Записываем программу
Program Vlogennyi_cikl;
Var
x,Xn,Xk,dX,y,Yn,Yk,dY,b : Real;
i,N: Integer;
Вложенные циклы
Записываем программу
Begin
Xn := 30 0; Xk := 600 ; dX := 100 ; x := Xn ;
N := trunc (( Xk - Xn )/ dX )+1;
Yn:=100;Yk:=800;dY:=100;
Вложенные циклы
Записываем программу
For i:=1 to N do
Begin
y:=Yn;
While y
Begin
b:= 0.6*x/(y+0.3*x);
WriteLn (‘При x =’, x :3:1,’ и y =’, y :3:1,’ функция b =’, b :6:2);
y:=y+dY;
End;
x:=x+dX;
End ;
End .
Вложенные циклы
Домашнее задание
Вычислить значение функции
z=Sin x + Cos y
при 0 x 1, x=0.2;
2 y 4, y =0.5;


Вложенные циклы в Python 