Циклические алгоритмы на Паскале

Содержание

Слайд 2

Циклический алгоритм Лучшее качества компьютеров проявляются не тогда, когда они рассчитывают

Циклический алгоритм

Лучшее качества компьютеров проявляются не тогда, когда они рассчитывают значения

сложных выражений, а когда многократно, с незначительными изменениями, повторяют сравнительно простые операции. Даже очень простые расчеты могут поставить человека в тупик, если их надо повторить тысячи раз, а повторять операции миллионы раз человек совершенно не способен.
С необходимостью повторяющихся вычислений программисты сталкиваются постоянно. Например, если надо подсчитать, сколько раз буква "о" встречается в тексте необходимо перебрать все буквы. При всей простоте этой программы исполнить ее человеку очень трудно, а для компьютера это задача на несколько секунд.

*

Слайд 3

Циклический алгоритм - описание действий, которые должны повторяться указанное число раз

Циклический алгоритм - описание действий, которые должны повторяться указанное число раз

или пока не выполнено заданное условие.
Перечень повторяющихся действий называют телом цикла.

*

Циклический алгоритм

Слайд 4

Оператор с заранее известным числом повторений (цикл с параметром) FOR [Счетчик:=НачЗнач]

Оператор с заранее известным числом повторений (цикл с параметром)

FOR [Счетчик:=НачЗнач] TO [КонЗнач] DO


тело цикла;

*

FOR I:=1 TO N DO ………..;

Слайд 5

Пример 1: Вывести на экран все числа от 1 до 100.

Пример 1:

Вывести на экран все числа от 1 до 100.

*

for I:=1

to 100 do
writeln (I);

Пример 2:

Вывести на экран все числа от 1 до 100 в обратном порядке:

for I:=100 downto 1 do
writeln (I);

Слайд 6

Пример 3: Рассчитать «N факториал» F = N! = 1?2 ?

Пример 3:

Рассчитать «N факториал» F = N! = 1?2 ? ...

? N

*

program fakt;
var n,I,f : integer ;
begin
write (‘введите число n’);
readln(n);
f:=1;
for i:=1 to n do
f:=f*i;
writeln (n,‘!=‘,f);
end.

Слайд 7

Оператор цикла с предусловием WHILE [Условие] DO [Оператор] * WHILE I да нет

Оператор цикла с предусловием

WHILE [Условие] DO [Оператор]

*

WHILE I<=N DO ………..;

да

нет

Слайд 8

Пример 4: Вывести на экран все значения функции y=sin x в

Пример 4:

Вывести на экран все значения функции y=sin x в интервале

[-30°; 30°] с шагом 5°

*

program sinus;
var i : integer ;
y : real;
begin
i:=-30;
while i<=30 do
begin
y:=sin(i/180*3.14);
writeln (‘sin(‘,i,’)=‘,y);
i:=i+5
end
end.

Слайд 9

Оператор цикла с постусловием REPEAT [Оператор] UNTIL [Условие] * REPEAT ……….. UNTIL I>N; да нет

Оператор цикла с постусловием

REPEAT [Оператор] UNTIL [Условие]

*

REPEAT ……….. UNTIL I>N;

да

нет

Слайд 10

Пример 5: Составьте программу вычисления суммы всех чётных двухзначных чисел *

Пример 5:

Составьте программу вычисления суммы всех чётных двухзначных чисел

*

program summa_chet;
var s,i

: integer ;
begin
s:=0;
i:=10;
repeat
s:=s+I;
i:=i+2
until i=100;
writeln (‘сумма всех четных двузначных чисел равна’, s);
end.