1.Цикл с постусловием — цикл, в котором условие проверяется после выполнения тела цикла. Отсюда следует, что тело всегда выполняется хотя бы один раз. В языке Паскаль этот цикл реализует оператор repeat.. until ; в Си — do.
2 Виды циклов
Безусловные циклы
Цикл с предусловием
Цикл с постусловием
Цикл с выходом из середины
Цикл со счётчиком (или цикл для)
Совместный цикл
До выход из цикла
Пропуск итерации.
3.do… while — цикл с постусловием; for — параметрический цикл (цикл с заданным числом повторений).
4.Если заранее неизвестно число повторений цикла, то можно использовать цикл с постусловием. Сначала выполняется тело цикла, затем проверяется условие. Если оно ложно, то выполняется тело цикла. Если условие истинно, то цикл считается выполненным.
Var x,y,z: real; t: integer; begin writeln('введите х и у'); readln(x,y); z:=sqrt(sqr(x)-sqr(y)); t:=0; while (z>0,1) do begin t:=t+1; z:=0,98*z; {если 2% от изменяющегося расстояния до пола; если же имеется ввиду 2% от исходного расстояния, то нужно будет ввести новую переменную или присвоить исходное значение z, например х, то есть сразу после z:=sqrt(sqr(x)-sqr(y)); написать x:=z; Формула (оператор) z:=0,98*z; изменится так: z:=z-x*0,98} end; writeln('палка упадет через ', t,' мин.'); end.
1.Цикл с постусловием — цикл, в котором условие проверяется после выполнения тела цикла. Отсюда следует, что тело всегда выполняется хотя бы один раз. В языке Паскаль этот цикл реализует оператор repeat.. until ; в Си — do.
2 Виды циклов
Безусловные циклы
Цикл с предусловием
Цикл с постусловием
Цикл с выходом из середины
Цикл со счётчиком (или цикл для)
Совместный цикл
До выход из цикла
Пропуск итерации.
3.do… while — цикл с постусловием; for — параметрический цикл (цикл с заданным числом повторений).
4.Если заранее неизвестно число повторений цикла, то можно использовать цикл с постусловием. Сначала выполняется тело цикла, затем проверяется условие. Если оно ложно, то выполняется тело цикла. Если условие истинно, то цикл считается выполненным.
t: integer;
begin writeln('введите х и у');
readln(x,y);
z:=sqrt(sqr(x)-sqr(y));
t:=0;
while (z>0,1) do
begin t:=t+1;
z:=0,98*z; {если 2% от изменяющегося расстояния до пола;
если же имеется ввиду 2% от исходного расстояния,
то нужно будет ввести новую переменную
или присвоить исходное значение z, например х,
то есть сразу после z:=sqrt(sqr(x)-sqr(y)); написать x:=z;
Формула (оператор) z:=0,98*z; изменится так:
z:=z-x*0,98}
end;
writeln('палка упадет через ', t,' мин.');
end.