Тема: Основы алгоритмизации

Урок №6. Цикл с постусловием

Цели:

-обучающие: обеспечить знание учащимися цикла с постусловием, его применение в типовых задачах

-воспитательные: создать условия для воспитания умения слушать других, культуры речи, общения

-развивающие: создать условия для развития мышления; способности четко формулировать свои мысли

Требования к результатам обучения:

-Знать/понимать различия использования цикла с предусловием и цикла с постусловием; основные информационные процессы в реальных ситуациях

-Уметь решать учебные задачи

-Применять полученные знания при решении задач

Ключевые понятия: цикл repat, оператор until

Обеспечение урока: интерактивная доска, персональный компьютер, тетради

План-сценарий урока:

1.  Приветствие (1 мин)

Приветствует учащихся, проверка готовности к уроку, настрой на предстоящую работу.

2.  Постановка цели урока, проверка домашнего задания (2 мин)

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

3.  Представление теоретического материала (16 мин)

Repeat — это цикл, в котором условие стоит после тела. Причем оно выполняется тогда и только тогда, когда результат условия false; как только логическое выражение становится true, выполнение цикла прекращается.

Этот оператор аналогичен оператору цикла с предусловием, но отличается от него тем, что проверка условия производится после выполнения тела (действий) цикла. Это обеспечивает его выполнение хотя бы один раз в отличие от ранее разобранных циклов.

НЕ нашли? Не то? Что вы ищете?

Данный оператор цикла предполагает наличие нескольких операторов в теле цикла, то есть можно выполнять несколько действий, поэтому служебные слова Begin и End не нужны.

Последовательность операторов, входящих в тело цикла выполняется один раз, после чего проверяется соблюдение условия, записанного следом за служебным словом Until. Если условие не соблюдается, цикл завершается. В противном случае - тело цикла повторяется ещё раз, после чего снова проверяется соблюдение условия.

Repeat – повторять

Until – до тех пор

Repeat имеет формат:

repeat 
<оператор 1>;
< оператор 2>;
until (пока условие ложно)

Паскаль - Урок 6: Циклы while, for, repeat

Рисунок 1 – Блок-схема цикла с постусловием

Запишем программу на языке Паскаля:

program summer; (Задаем имя праграмме)
uses crt;
var
sum, a: real; (sum – для накопления суммы, а – для очередного числа)
begin
sum:=0; (Обнуляем сумму)
repeat
sum:=sum+a; (Добавляем введенное число к сумме)
write «Введите число:» ;(Ввод определенного числа)
readln(a)
until a<0; (Проверяем введенное число на отрицательность)
(При выходе из цикла выполняется этот оператор: )
write('Сумма чисел=' ,sum:5:3);
readln
end.

4.  Практическая часть (25 мин)

Задачи на усвоение нового материала:

Задание 1.

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

Решение:

Совместно с учениками на доске составляем программу.

1) Введем переменные:

с – цена товара;
k – количество товара;
р – заданная предельная величина; 
s – начальное значение общей стоимости покупки;

2) Составим блок-схему для задачи.

Вводим начальное значение суммы (s) = 0, 

Далее вводим цену товара (c) и его количество (k), затем вычисляем его стоимость и выводить результат на экран до тех пор, пока она не превысит предельную сумму, в этом случае на экран нужно вывести сообщение о превышении.

Задание 2. Самостоятельно записать решение на языке Паскаль.

program pokypka;
uses crt;
var c, k,p, s:integer;
begin
clrscr;
{Вводим наличие денежных средств с клавиатуры}
writeln ('Предельная сумма – ');readln(p);
s:=0; {вводим начальное значение суммы}
REPEAT;
writeln ('Цена товара – ');readln (c); {вводим цену товара}
writeln ('Количество товара – ');readln (k); {вводим количество товара}
s:=s+c*k; {Находим стоимость приобретенных товаров}
{Выводим на экран стоимость определенных товаров}
writeln ('Стоимость покупки =',s);
UNTIL s>p; {Повторяем до превышения наличия денег}
writeln('Не хватило!');
end.

Проверка правильности выполнения задания.

Задачи на закрепление нового материала:

- Задача № 1

Составить программу, которая вводит и суммирует целые числа. Если введено значение 999, то на экран выводится результат суммирования.

Решение:

program summa;

var x, s:integer;

Begin

s:=0;

repeat

write(‘Введите число’);

Readln(x);

If x<>999 then s:=s+x;

Until x=999;

writeln (‘Сумма введенных чисел’, s);

- Задача № 2

Написать программу, в которой компьютер будет печатать «ноль» указанное количество раз.

Решение:

program nol’;

var i, n:integer;

begin

write ('количество раз');

readln (n);

i:=1;

repeat

write (0);

i:=i+1

until i>n

end.

Проверка правильности выполнения заданий.

5.  Подведение итогов, рефлексия (1 мин)

Вопросы:

- Что называется циклом с постусловием?

- Есть ли сложности в использовании данного цикла? В чем сложности?