Сравнение работы операторов цикла
№
| Характеристика
| While
| For
| Repeat
|
| Оператор цикла с
| предусловием
| параметром
| постусловием
|
| Установка начального значения параметра цикла
| до цикла
| в заголовке
| до цикла
|
| Тип циклического алгоритма
| с предусловием
| с постусловием
|
| Тело цикла выполняется пока условие
| истинно
| ложно
|
| Количество операторов тела цикла
| простой или составной
| любое
|
| Сколько раз выполняется тело цикла
| может не выполняться
ни разу
| Один раз обязательно
|
| Тип параметров цикла
| любой простой
| только порядковый
| любой простой
|
| Шаг изменения параметров цикла
| любой
| +1 или -1
| любой
|
Пример1: Найти факториал числа Х. Х!=1*2*3* … *Х
| programprimer1;
vari,x:integer;
Pr:real;
begin
writeln('Введите число');
readln(x);
Pr:=1;
for i:=1 to x do
Pr:=Pr*i;
writeln('Факториал x = ',Pr:10);
end.
|
Пример2:
Определить количество цифр в записи введенного с клавиатуры целого положительного числа n.
N:= N div 10
K:=K+1
K:=K+1
|
|
Program primer2;
Var
N,K: real;
Begin
Writeln (‘введите положительное число: ’);
Readln (N);
K:=0;
While N>0 do
Begin
N:= N div 10;
K:=K+1;
End;
Writeln (‘Вывод К= ’,K);
Readln
End.
|
Пример 3: Вычислить минимальное значение функции y=f(x). Аргумент х изменяется от х1 до х2 с шагом х3.
| Program primer3;
Var x, x1 ,x2 ,x3, y, min: real;
Begin
Writeln(‘введите х1,х2,х3’);
Readln(x1,x2,x3);
min:=f(x1);
x:=x1;
Repeat
y:=f(x);
If y<min then min:=y;
x:=x+x3;
Until x>x2;
Writeln(‘min=‘, min:7:2)
End.
|
Пример 4: Дана функция y= . x1 ≤ x ≤ x2, x3 – типа real. Ввести все значения функции. Задачу решить используя оператор цикла For.
K=trunc(
|
|
Program primer4;
Var x, x1 ,x2 ,x3, y, min: real;
i, k: integer;
Begin
Writeln(‘введите х1,х2,х3’);
Readln(x1,x2,x3);
K:=trunc((x2-x1)/x3)+1;
x:=x1;
For i:=1 to k do
begin
y:=f(x);
writeln(‘x=’,x:6:1,’ y=’,y6:1);
x:=x+x3;
end;
End.
|