Слайд 1Операторы цикла
© М.Е.Макарова httphttp://http://uchinfohttp://uchinfo.http://uchinfo.comhttp://uchinfo.com.http://uchinfo.com.ua
Слайд 2Циклы позволяют многократно выполнять одну или группу команд, причем в
тексте программы нет необходимости записывать эти команды несколько раз.
В языке
программирования PASCAL существует три вида циклов:
Арифметический (перечисляемый) цикл FOR
Логический цикл с предусловием WHILE
Логический цикл с послеусловием REPEAT
Слайд 3Особенностью арифметического цикла является то, что число повторений операторов цикла
должно быть известно заранее. Решение о выполнении или невыполнении в
очередной раз тела цикла принимается до начала его прохождения, поэтому может случиться так, что тело цикла не будет выполнено ни разу.
Арифметический цикл FOR
Слайд 4Порядок выполнения цикла FOR
Слайд 5Количество выполнений тела цикла определяется до первого выполнения тела цикла,
поэтому, если в выражении n2 используются переменные, которые изменяются в
теле цикла, это никак не повлияет на количество выполнений тела цикла. Например, в следующей последовательности операторов:
n := 10;
For i := 1 to n do
Begin
Write (i);
n := 100;
End;
тело цикла будет выполняться 10 раз, хотя уже после первого выполнения тела цикла конечное значение параметра цикла станет равным 100.
Слайд 6Цикл под номером 1 будет выполняться для счетчика, последовательно принимающего
значения –10, –9, –8, –7, –6, –5, –4,то есть 7
раз.
Цикл под номером 2 не будет выполняться ни разу, так как начальное значение счетчика больше конечного.
Цикл под номером 3 будет выполняться 1 раз для счетчика, равного 3.
Слайд 7Правильно записаны фрагменты под номерами 1 и 4. Во фрагментах
2 и 3 в операторах тела цикла производится изменение значение
счетчика цикла.
Значение счетчика цикла может использоваться в выражениях, входящих в операторы тела цикла, но изменение значения счетчика цикла этими операторами недопустимо.
Слайд 8В Турбо-Паскале имеются два способа для организации регулярного цикла: прямой
и обратный.
Прямой пересчет идет от известного меньшего числа до
известного большего, на каждом шаге прибавляется единица (например, от 20 до 25: 20, 21, 22, 23, 24, 25).
Обратный пересчет – от большего к меньшему. И на каждом шаге вычитается единица.
Слайд 9Вывести на экран значение y2 (y=1,2,…,10)
в возрастающем и убывающем
порядке
Использование оператора цикла for.
Слайд 10Program KWADRAT;
Uses crt;
Var kw, y: integer;
Begin
Clrscr;
For y:=1 to 10 do
Begin
kw:= sqr(y);
Writeln
(y:3,kw:5);
End;
Writeln;
For y:=10 downto 1 do
Begin
kw:=sqr(y);
Writeln (y:3,kw:5);
End;
Readln;
End.
Слайд 11Выбрать наименьшие значение из 20 чисел, вводимых с клавиатуры:
Слайд 12program min;
uses crt;
var i:integer;
x,y : real;
begin
clrscr;
writeln ('Enter first');
readln (x);
for i:=2 to
20 do
begin
write ('Enter next');
readln (y);
if y end;
writeln ('min=',x:6:2);
readln;
end.
Слайд 13Вычисление
суммы и
количества чисел
Слайд 14Вычислить сумму
n чисел, вводимых
с клавиатуры.
program Summa;
uses crt;
var I,
n :integer;
x, sum : real;
begin
clrscr;
writeln (‘Enter n’);
readln (n);
sum:=0;
for i:=1 to n do
begin
write (‘Enter x’);
readln (x);
sum:=sum+ x;
end;
writeln (‘sum=’, sum:6:2);
readln;
end.
Слайд 15Среди всех двузначных чисел найти те, сумма цифр которых равна
n (0
k, p1, p2:integer;
begin
clrscr;
k:=0;
writeln (‘Vvesti n’);
readln (n);
for i:=10 to 99 do
begin
p1:=i div 10;
p2:= i mod 10;
if (p1+ p2) =n then
begin
writeln (i);
k:=k+1;
end;
end;
writeln (‘Koli4estvo 4isel ’, k);
readln;
end.
Слайд 16Итоги урока
Для чего используются команды цикла?
Как в цикле записать команду
присваивания, чтобы она вычисляла сумму чисел? Количество?
Какое начальное значение должно
быть у переменной, в которой накапливаем сумму чисел?
Можно ли изменять значение переменной цикла в теле цикла?
Можно ли изменять значение верхней границы цикла в теле цикла?
Какие трудности возникли у вас в ходе урока?
Что вы посоветуете своим одноклассникам для преодоления этих трудностей?
Слайд 17Задания для самостоятельного выполнения
Написать программу, которая вычисляет среднее арифметическое вводимой
с клавиатуры последовательности дробных чисел. Количество чисел должно задаваться во
время работы программы.
Написать программу, которая находит сумму целых положительных чисел, которые больше 20, меньше 100, кратны 3 и заканчиваются на 2, 4 или 8.
Написать программу, которая выводит на экран таблицу стоимости порций мороженного.