Тема урока "Программирование циклов с заданным условием продолжения работы, условием окончания работы и числом повторений"
Сегодня на уроке вы:
вспомните, какие алгоритмы называются циклическими и какие типы циклов выделяют в зависимости от организации их работы;
познакомитесь с принципом работы циклов с предусловием, постусловием и параметром, записью их на языке программирования Pascal;
рассмотрите решение задач с использованием циклов;
научитесь составлять программы с циклами.
Давайте вспомним!
Циклическими называются алгоритмы, которые содержат помимо прочих конструкцию повторения.
Повторение (цикл) – это алгоритмическая конструкция, представляющая собой последовательность действий, которая выполняется многократно.
Последовательность действий, исполняемых в цикле называется телом цикла.
Цикл с заданным условием продолжения работы
(с предусловием или цикл-пока)
Блок-схема цикла с предусловием
Запись на алгоритмическом языке
нц пока условие
тело цикла
кц
Условие, как и в ветвлении, представляет собой логическое высказывание.
Если условие истинно – то выполняется тело цикла.
Цикл с заданным условием окончания работы
(с постусловием или цикл-до)
Блок-схема цикла с постусловием
Запись на алгоритмическом языке
нц
тело цикла
кц при условие
Условие, как и в ветвлении, представляет собой логическое высказывание.
Этот цикл организован таким образом, что сначала выполняется тело цикла, затем проверяется его условие. То есть тело цикла будет выполнено в процессе работы программы хотя бы один раз. Если условие цикла не выполняется, то снова возвращаемся в начало алгоритма, то есть снова выполняется тело цикла. Если же условие цикла выполняется, то цикл завершает свою работу и выполняются команды которые следуют после него.
Цикл с заданным числом повторений
(с параметром или цикл-для)
Блок-схема цикла с параметром
Запись на алгоритмическом языке
нц для i от i1 до i2 шаг h
тело цикла
кц
Как видим в блок-схеме тело цикла размещается под блоком, обозначающим цикл. При этом в блоке указывается параметр i, его начальное i1 и конечное значение i2, а также значение шага h. При этом если шаг равен единице, его можно не указывать.
Посмотри видеоролик и узнай, как цикл с предусловием программируется на языке Pascal
(рассматриваются примеры решения задач)
Запомни!
Запись на языке Pascal
while условие do
begin
тело цикла
end;
Условие, как и в ветвлении, представляет собой логическое высказывание.
Если условие истинно – то выполняется тело цикла.
Тело цикла состоит из серии операторов, записанных в порядке своего исполнения. Как правило они записываются в логических скобках, то есть между служебными словами begin и end. Если тело цикла состоит из одного оператора, то логические скобки записывать необязательно.
Посмотри видеоролик и узнай, как цикл с постусловием программируется на языке Pascal
(рассматриваются примеры решения задач)
Запомни!
Запись на языке Pascal
repeat
тело цикла
until условие;
Условие, как и в ветвлении, представляет собой логическое высказывание.
Тело цикла состоит из серии операторов, записанных в порядке своего исполнения.
На русский язык эту конструкцию можно перевести как «Выполнять тело цикла, пока не условие».
(рассматриваются примеры решения задач)
Запомни!
Запись на языке Pascal
for i:=i1 to i2 do
begin
тело цикла
end;
i - параметр цикла (целый тип данных);
i1 - начальное значение; i2 - конечное значение.
Если между i1 и i2 слово to – значение параметра при каждом выполнении тела цикла будет увеличиваться на 1. Если это слово downto – значение параметра при каждом выполнении тела цикла будет уменьшаться на 1.
Если тело цикла состоит из нескольких операторов, то оно замыкается между служебными словами begin и end. После слова end ставится точка с запятой.
Рассмотрим примеры!
Обратите внимание на знаки препинания в программе на языке Pascal!
Цикл с предусловием
Пример 1. Запишите на языке Паскаль программу, записанную на алгоритмическом языке.
Пример 2. Запишите на языке Паскаль фрагмент программы, соответствующий блок-схеме.
program primer_2;
var t, k: integer;
begin
k:=10;
t:=50;
while k>1 do
begin
t:=t-5;
k:=k-2
end;
writeln (t, k);
end.
Пример 3. Составить программу для вывода кубов целых чисел от a до b, где a < b.
program primer_3;
var a, b: integer;
begin
readln(a, b);
while a <= b do
begin
writeln(a, ‘^3 = ’, a*a*a);
a:=a+1;
end;
end.
‘^3 = ’ - это выражение в кавычках при выводе на экран не изменяется, это просто пояснение, его можно не писать.
Если не напишите в теле цикла a:=a+1; - наращивание числа a, пока не станет равным b - то цикл станет бесконечным, т.е. произойдет зацикливание.
Цикл с постусловием
Рассмотрим примеры!
Обратите внимание на знаки препинания в программе на языке Pascal!
Пример 1. Запишите на языке Паскаль программу, записанную на алгоритмическом языке.
program primer_1;
var n: integer; x: real;
begin
n:=1;
x:=10;
repeat
n:=n+1;
x:=x+0.1*x;
until x>=25;
writeln (n);
end.
Пример 2. Запишите на языке Паскаль фрагмент программы, соответствующий блок-схеме.
Пример 3. Составить программу для вывода кубов целых чисел от a до b, где a < b. Использовать цикл с постусловием.
program primer_3;
var a, b: integer;
begin
readln(a, b);
repeat
writeln(a, ‘^3 = ’, a*a*a);
a:=a+1;
until a > b;
end.
‘^3 = ’ - это выражение в кавычках при выводе на экран не изменяется, это просто пояснение, его можно не писать.
Если не напишите в теле цикла a:=a+1; - наращивание числа a, пока не станет равным b - то цикл станет бесконечным, т.е. произойдет зацикливание.
В цикле repeat условие a > b должно не выполняться, чтобы продолжать выполнение тела цикла.
Цикл с параметром
Пример 1. Запишите на языке Паскаль программу, записанную на алгоритмическом языке.
program primer_1;
var s, k: integer;
begin
s:=0;
for k:=1 to 5 do
s:=s+2*k;
writeln (s);
end.
Пример 2. Запишите на языке Паскаль фрагмент программы, соответствующий блок-схеме.
Пример 3.
Пример 4.
Выполни задания!
Изучи § 3.5.
Выполненные задания присылать tasha-nataly@mail.ru или https://vk.com/id59850110
Выполни задания 1-3 (используй примеры в уроке):
Задание 1
Запишите на языке Паскаль программу, записанную на алгоритмическом языке (цикл с предусловием).
Задание 2
Запишите на языке Паскаль фрагмент программы, соответствующий блок-схеме (цикл с постусловием).
Задание 3
Составьте программу с циклом for. Найти сумму чисел в промежутке (-10; 25).
Важно запомнить!
Циклическими называются алгоритмы, содержащие конструкцию повторения.
Повторение (цикл) представляет собой последовательность действий, повторяющихся многократно.
В зависимости от организации выделяют: циклы с заданным условием продолжения работы, циклы с заданным условием окончания работы и циклы с заданным числом повторений.