Организация циклов в языке программирования Паскаль.
Организация циклов в языке программирования Паскаль.
Презентация предназначена для проведения уроков программирования на языке Паскаль в 9 классе. В ней представлены все виды организации циклов на языке Паскаль. Здесь очень доступно объяснено, чем отличается использование различных видов циклов на языке Паскаль, объяснение строится на разборе примеров решения задач на языке Паскаль.
Вы уже знаете о суперспособностях современного учителя?
Тратить минимум сил на подготовку и проведение уроков.
Быстро и объективно проверять знания учащихся.
Сделать изучение нового материала максимально понятным.
Избавить себя от подбора заданий и их проверки после уроков.
Просмотр содержимого документа
«Организация циклов в языке программирования Паскаль. »
Организация цикловв языке программирования Паскаль.
Циклом называется последовательность многократно повторяющихся действий.
При решении алгоритмических задач может возникнуть необходимость повторить одни и те же действия несколько раз. Такие действия называют циклическими или циклами.
Процесс называется циклическим, если вычисления в нём многократно повторяются по одним и тем же формулам при разных значениях входящих в них переменных.
Алгоритмическая структура “Цикл” обеспечивает многократное выполнение некоторой последовательности действий, которая называется телом цикла .
В Паскале различают циклы:
1) с неопределенным числом повторений ; здесь различают цикл с пред-условием (цикл “Пока”) и цикл с пост-условием (цикл “До”).
2) с определённым числом повторений (цикл с параметром, или цикл со счетчиком, или цикл “Для”);
В Паскале существуют 3 вида циклов :
цикл с пред-условием
цикл с пост-условием
цикл с параметром
ОТЛИЧИЕ - СПОСОБ ПРОВЕРКИ ОКОНЧАНИЯ ЦИКЛА.
Операторы цикла
1.Цикл с пред-условием
Whiledo Begin
; ; ; . . .
End;
Блок-схема цикла While
Замечания:
Если в теле цикла записано более одной команды, то тело цикла заключается в операторные скобки begin и end.
Число повторений инструкции цикла while определяется ходом выполнения программы.
Инструкция цикла while выполняется до тех пор, пока условие, записанное после слова while, истинно.
После слова while надо записывать условие продолжения (выполнения) цикла.
Для завершения цикла while в теле цикла обязательно должны присутствовать инструкции, влияющие на условие выполнения инструкций цикла.
Цикл while – цикл с предусловием, т.е. инструкции тела цикла вообще могут быть не выполнены.
В цикле while проверка условия выхода из цикла выполняется в начале цикла.
Пример:Найти сумму всех чётных чисел от 20 до 40.
Введём обозначения: 1) формула суммы S:=S+слагаемое, где начальное значение суммы S=0;
2) получение очередного чётного числа K:=K+2, где начальное чётное число K=20
Программа на Паскале:
Program Primer_1;
Var K,S: integer;
begin
S:=0; K:=20;
While K
begin
S:=S+K;
K:=K+2;
end;
writeln(‘S= ’,S);
Readln;
end.
Операторы цикла
2.Цикл с пост-условием
Repeat
; ; ; . . .
Until ;
Блок-схема цикла Repeat
Замечания:
Зарезервированные слова repeat и until обрамляют тело цикла, поэтому дополнительные пары операторов begin и end уже не обязательны.
Число повторений цикла repeat определяется ходом выполнения программы.
Цикл repeat выполняется до тех пор, пока условие, стоящее после слова until, ложно.
После слова until записывается условие завершения цикла (оно противоположно для условия продолжения цикла).
Для завершения цикла repeat в теле цикла обязательно должны быть инструкции, выполнение которых влияет на условие завершения цикла.
Цикл repeat – цикл с постусловием, т.е. тело цикла выполняется хотя бы один раз.
40; writeln(‘S= ’,S); Readln; end." width="640"
Пример:Найти сумму всех чётных чисел от 20 до 40.
Пример– тот же, но с циклом Repeat:
Фрагмент программы:
Program Primer_2;
Var K,S: integer;
begin
S:=0; K:=20;
Repeat
S:=S+K;
K:=K+2;
Until K40;
writeln(‘S= ’,S);
Readln;
end.
:= to do Begin ; ; ; . . . End; 2) с убыванием переменной цикла: For переменная := down to do Begin ; ; ; . . . End;" width="640"
Операторы цикла
3.Цикл с параметром.
Синтаксическая запись цикла с параметром (цикл “Для”) имеет два варианта:
1) с возрастанием переменной цикла:
For переменная :=todo
Begin
; ; ; . . .
End;
2) с убыванием переменной цикла:
For переменная := down todo
Begin
; ; ; . . .
End;
Блок-схема цикла For
Замечания:
Цикл For используется для организации циклов с фиксированным, определяемым во время разработки программы, числом повторений.
Количество повторений цикла определяется начальным и конечным значениями переменной-счётчика (т.е. параметром).
Переменная – счётчик должна быть целого типа.
Идентификатор(переменная), начальное и конечное значение переменной должны быть одного и того же порядкового типа.
Оба выражения (начальное и конечное значение переменной) вычисляются перед выполнением оператора цикла и не должны изменяться внутри оператора цикла.
После окончания цикла значение параметра цикла не определено, т.е. нельзя считать, что з начение параметра равно значению второго выражения.
Пример:Напечатать таблицу квадратов чисел от 20 до 30.
Program Kvadrat;
Var X,Y: integer;
Begin
Write(‘ X ’, ‘ Y ‘); writeln;
For X:=20 to 30 do
Begin
Y:=X*X; Write(X:4, Y:4); writeln;
End;
Readln;
End.
Примечание: на вывод значений X и Y отводится по 4 позиции.
Общая схема циклов в Паскале
Задания для практической части
Пример 1:Вычислить произведение первых N целых положительных чисел. Количество чисел вводится с клавиатуры.Пример 2:Напечатать таблицу стоимости порции сыра весом от 100 до 1000 граммов с шагом 50 граммов. Цена килограмма сыра задаётся с клавиатуры в процессе исполнения программы.Пример 3:Вычислить сумму ряда чисел
Пример 1:Вычислить произведение первых N целых положительных чисел. Количество чисел вводится с клавиатуры.
Program Proizvedenie;
Var N,X,P: integer;
Begin
Writeln(‘ введите количество чисел N ‘); readln(N);
P:=1; X:=1;
While X
Begin P:=P*X; X:=X+1; end;
Writeln(‘произведение‘, N, ‘ чисел равно ‘, P);
Readln;
End.
1000; Readln; End. Примечание: стоимость каждой порции сыра в граммах выводится с новой строки и в формате руб.,коп." width="640"
Пример 2:Напечатать таблицу стоимости порции сыра весом от 100 до 1000 граммов с шагом 50 граммов. Цена килограмма сыра задаётся с клавиатуры в процессе исполнения программы.
Program Syr;
Var m: integer; t,s: real;
Begin
Writeln(‘Введите цену за килограмм сыра’); readln(t);
Writeln(‘ Масса ‘, ‘ Стоимость ‘);
m:=100;
Repeat
S:=m*t/1000;
Writeln(m:6,s:8:2);
m:=m+50;
Until m1000;
Readln;
End.
Примечание: стоимость каждой порции сыра в граммах выводится с новой строки и в формате руб.,коп.