ДЛЯ i:=1 ДО N ВЫПОЛНЯТЬ действие;
FOR i:=1 TO N DO действие;
FOR i:=1 TO N DO BEGIN
действие1;
действие2;
END;
FOR i:=N DOWNTO 1 DO действие;
Виды циклов. 1
если переменная i убывает
если в теле цикла несколько
действий
если в теле цикла одно действие
FOR i:=1 TO N DO действие1;
действие2;
Блок-схема цикла с параметром.
Виды циклов. 2
Пример 1.
Вывести на экран 64 вертикальные
линии.
Виды циклов. 3
REPEAT – повторять
UNTIL – до тех пор
ПОВТОРЯТЬ
действие1;
действие2;
ДО ТЕХ ПОР (ПОКА УСЛОВИЕ ЛОЖНО);
REPEAT
действие1;
действие2;
UNTIL (ПОКА УСЛОВИЕ ЛОЖНО);
Виды циклов. 4
Виды циклов. 5
повторять до тех пор пока условие ложно
III. Цикл с предусловием.
Может не выполнится не разу.
Выполняется пока условие истинно.
WHILE – пока
DO – выполнять
ПОКА (УСЛОВИЕ ИСТИННО) ВЫПОЛНЯТЬ
НАЧАЛО
действие1;
действие2;
КОНЕЦ;
Виды циклов. 6
условие
Действие 1
Действие 2
да
нет
WHILE (УСЛОВИЕ ИСТИННО) DO
действие1;
действие2;
условие
Действие 1
Действие 2
да
нет
Виды циклов. 7
Виды циклов. 8
повторять пока Х меньше 640
Более короткое решение:
Program n1;
Uses Crt, GraphABC;
var x:Integer;
begin
For x:=1 to 64 do line(320,400,x*10,1);
end.
Графические задачи на циклы. 9
В теле цикла могут изменяться две переменные
Графические задачи на циклы. 10
Вывод i-ой строки
Изменение координаты Y строки
Графические задачи на циклы 12
Задача 1.
Program n1;
Uses Crt;
var x,y,dx:real;
begin
ClrScr;
x:= -1;
dx:=0.1;
repeat
y:= 3*sin(x) + cos(2*x);
writeln ('x= ',x:7:5,' y= ',y:7:5);
x:=x+dx;
until (x>1);
end.
Расчетные задачи на циклы 13
Задача 2.
Построить таблицу значений функции на интервале [-1; 1] с шагом Δх = 0,1 если функция имеет вид:
x+1, при x<-0.5
Y= x2 , при -0.5<=x<=0.5
x -2, при x>0.5
Задача 3.
repeat
if (x<-0.5) then y:=x+1;
if (x>=-0.5) and (x<=0.5) then y:=x*x;
if (x>0.5) then y:=x-2;
writeln ('x= ',x:7:5,' y= ',y:7:5);
x:=x+dx;
until (x>1);
repeat
if (x<>1) then begin
y:= (x+1)/(1-x);
writeln ('x= ',x:7,' y= ',y:7:5);
end;
x:=x+dx;
until (x>10);
Расчетные задачи на циклы 14
Небольшое отступление:
Построить таблицу значений функции y = 1/х на интервале [-1; 1] с шагом 0,1
Program n1;
Uses Crt;
var x,y,dx:real;
begin
ClrScr;
x:= -1;
dx:=0.1;
repeat
if (x<>0) then begin
y:= 1/x;
writeln ('x= ',x,' y= ',y:7:5);
end;
x:=x+dx;
until (x>1);
end.
Изменим формат вывода
Нуля нет! А в место него число в минус шестнадцатой степени.
Расчетные задачи на циклы 15
Пусть все числа, по модулю меньшие 0,000000000001
будут для нас нулями.
Вот одно из возможных решений данной проблемы:
Расчетные задачи на циклы 16
Program n4;
Uses Crt;
var i,n:integer;
a,s,sr:real;
Begin
ClrScr;
write('N=');readln(n);
s:=0;
for i:=1 to n do begin
write( ‘ Введи [ ‘ , i , ‘ ] = ‘ );Readln(a);
s:=s+a;
end;
sr:=s/n;
writeln(‘Среднее арифметическое = ',sr:10:5)
end.
Математическая запись задачи
Результат выполнения программы
Расчетные задачи на циклы 17
Program n1;
Uses crt;
var s:real;
i,n:Integer;
begin
Clrscr;
Write(‘Введи n=');Readln(n);
s:=0;
For i:=1 to N do s:=s+1/i;
writeln('s=',s:10:5);
End.
Результат очень легко проверить в ручную
Расчетные задачи на циклы 18
program n6;
Uses Crt;
var e,d:integer;
begin
ClrScr;
for d:=1 to 9 do
for e:=0 to 9 do
if d+e=10 then writeln(d*10+e);
end.
Расчетные задачи на циклы 19
Сумма вычисляется до тех пор, пока очередное слагаемое не станет меньше
точности Е
Program n7;
Uses crt;
var s,e:real; i:integer;
begin
clrscr;
s:=0; i:=1; e:=0.02;
Repeat
s:=s+1/i;
Writeln('i=',i,' слагаемое',1/i);
i:=i+1;
until (e>1/i);
writeln('S=',s:10:5);
end.
Расчетные задачи на циклы 21
Ширина прямоугольника h:=(4-1)/1000;
Высота прямоугольника
1/x
Площадь одного прямоугольника
h*1/x
Расчетные задачи на циклы 22
Расчетные задачи на циклы 23
Если n имеет тип integer то эту строку можно записать так: n:=n div 10;
Program n10;
Uses crt;
var i,s:Integer;
begin
Clrscr;
s:=0;
For i:=2 to 100 do if (i mod 2 = 0) then s:=s+i;
writeln('s=',s:10);
End.
Всегда ли нужны циклы 23
Всегда ли нужны циклы 24
Найдем количество n членов в этой последовательности:
an=a1+d(n-1)
100=2+2(n-1)
100=2+2n-2
100=2n
n=50
Подставим значения в формулу суммы
Это сайт презентаций, где можно хранить и обмениваться своими презентациями, докладами, проектами, шаблонами в формате PowerPoint с другими пользователями. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами.
Email: Нажмите что бы посмотреть