Тема урока "Программирование циклов с заданным условием окончания работы"
Сегодня на уроке вы:
вспомните, какие алгоритмы называются циклическими и какие типы циклов выделяют в зависимости от организации их работы;
познакомитесь с принципом работы цикла с постусловием и записью его на языке программирования Pascal;
рассмотрите решение задач с использованием циклов этого типа;
научитесь составлять программы с циклом-до (repeat).
Давайте вспомним!
Циклическими называются алгоритмы, которые содержат помимо прочих конструкцию повторения.
Повторение (цикл) – это алгоритмическая конструкция, представляющая собой последовательность действий, которая выполняется многократно.
Последовательность действий, исполняемых в цикле называется телом цикла.
Цикл с заданным условием окончания работы
(с постусловием или цикл-до)
Блок-схема цикла с постусловием
Запись на алгоритмическом языке
нц
тело цикла
кц при условие
Условие, как и в ветвлении, представляет собой логическое высказывание.
Этот цикл организован таким образом, что сначала выполняется тело цикла, затем проверяется его условие. То есть тело цикла будет выполнено в процессе работы программы хотя бы один раз. Если условие цикла не выполняется, то снова возвращаемся в начало алгоритма, то есть снова выполняется тело цикла. Если же условие цикла выполняется, то цикл завершает свою работу и выполняются команды которые следуют после него.
Посмотри видеоролик и узнай, как цикл с постусловием программируется на языке Pascal
(рассматриваются примеры решения задач)
Запиши в тетрадь и запомни!
Запись на языке Pascal
repeat
тело цикла
until условие;
Условие, как и в ветвлении, представляет собой логическое высказывание.
Тело цикла состоит из серии операторов, записанных в порядке своего исполнения.
На русский язык эту конструкцию можно перевести как «Выполнять тело цикла, пока не условие».
Рассмотрим примеры!
Обратите внимание на знаки препинания в программе на языке 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 должно не выполняться, чтобы продолжать выполнение тела цикла.