Сравнение работы операторов цикла

Характеристика While For Repeat
Оператор цикла с предусловием параметром постусловием
Установка начального значения параметра цикла до цикла в заголовке до цикла
Тип циклического алгоритма с предусловием   с постусловием
Тело цикла выполняется пока условие истинно   ложно
Количество операторов тела цикла простой или составной   любое
Сколько раз выполняется тело цикла может не выполняться ни разу Один раз обязательно
Тип параметров цикла любой простой только порядковый любой простой
Шаг изменения параметров цикла любой +1 или -1 любой

 

Пример1: Найти факториал числа Х. Х!=1*2*3* … *Х

 

 
X
Pr=1
i=1.x.1
Pr=Pr*i
Вывод Pr
конец
начало
конец
конец

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.

 

 

Начало
K:= 0
N>0
Ввод N
N:= N div 10 K:=K+1   K:=K+1
Вывод K
Конец

  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.

начало
Ввод х1,х2, х3
min=f(x1),x=x1
x>x2
y=f(x)
Y<minn
min=y
x=x+x3
Вывод min
конец

 

 

 

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.

 

 

начало
Вывод х1,х2,х3
K=trunc(
x=x1
I=1,k,1
Y=f(x)
Вывод x, y
x=x+x3
конец

 

  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.