Тема урока: Основные алгоритмические конструкции. Повторение. Цикл с заданным условием окончания работы.
Цели:
познакомить с правилами записи оператора repeat … until;
рассмотреть пример программирования циклического алгоритма с помощью оператора repeat … until;
получить опыт программирования циклов с заданным условием продолжения работы.
сформировать умение записывать на языке программирования короткие алгоритмы с циклами.
Теоретические сведения.
Н
Опорный конспект
а прошлом уроке мы рассмотрели цикл с заданным условием продолжения работы (цикл ПОКА), на этом уроке мы продолжим разбирать тему конструкций с повторением и рассмотрим следующий вид циклов - цикл с заданным условием окончания работы (цикл ДО).
Общий вид оператора:
repeat until
Здесь:
; ; … - операторы, образующие тело цикла;
- логическое выражение; если оно ложно, то выполняется тело цикла.
От слова repeat до слова until следует тело цикла, поэтому заключать тело цикла в begin ……. end необязательно.
Конструкция repeat Тело цикла until условие
читается (ри'пит.....ан'тил...),
а
повторяй
операторы тела цикла
до тех пор, пока условие НЕ станет истинным.
переводится:
Блок-схема
Задание 1
Найдите в Интернете, чем отличается цикл repeat … until … от цикла while
Пример 1
Компьютер предлагает человеку ввести слово, после чего распечатывает это слово, снабдив его восклицательным знаком. Затем снова предлагает ввести слово и так до тех пор, пока человек не введет слово "Хватит". Распечатав его с восклицательным знаком, компьютер отвечает "Хватит так хватит" и заканчивает работу.
Придумаем строковую переменную, в которую человек будет с клавиатуры вводить слово. Назовем ее Slovo.
Program word;
VAR Slovo : String;
BEGIN
repeat
WriteLn('Введите слово');
ReadLn(Slovo);
WriteLn(Slovo, '!')
until Slovo='Хватит';
WriteLn('Хватит так хватит')
END.
Пример 2
Составим с использованием оператора repeat программу решения задачи о печати чисел 3 5 7 9
Program pr2;
VAR b : Integer;
BEGIN
Write('Начало счета '); { Выведите сообщение 'Начало счета '}
b:=3; { Задайте переменной b начальное значение 3}
repeat { повторяй тело цикла }
(на этом шаге 59 - ложно)}
Write(b,' '); { Выведите на экран значение переменной b, т.е. 3}
b:=b+2; { Присвойте переменной b значение b+2, т.е. 5}
until b9; {
до тех пор,
пока b9
НЕ станет истинным
Write(' Конец счета') { Выведите сообщение ' Конец счета''}
END.
Задание 2
Определите значения переменных K и Y к фрагменту программы. Запишите значения K и Y на каждой итерации (каждом прохождении тела цикла) в таблицу
Кол-во итераций | K | Y |
1 | | |
2 | | |
⁞ | | |
Задание 3
Напечатайте в Алго и пришлите скрин
Program word;
V AR Slovo : String;
BEGIN
repeat
WriteLn('Введите слово');
ReadLn(Slovo);
WriteLn(Slovo, '!')
until Slovo='Хватит';
WriteLn('Хватит так хватит')
END.
З адание 4
Зарисуйте блок-схему к программе с помощью цикла repeat, которая n раз выводит на экран сообщения:
1-й енот
2-й енот
3-й енот
…
n-й енот
1, 2,3… n. Значения переменной i
Пример 3
Изучите программу, выводящую на экран изображение 4-х звёздочек n строк.
С нумерацией этих строк:
Задание 5
Напишите программу, выводящую на экран изображение шахматной доски, где чёрные клетки изображаются звёздочками, а белые - пробелами
при проверке программы вводим число 2. На экран 2 раза выведутся строки:
* * * *
* * * *
Задание 6
Дана программа, написанная с помощью цикла while. Преобразите её, используя цикл repeat. Программа выводит на экран таблицу возведения числа во 2-ю степень (от 0 до 10). Результат запуска:
Подсказка нужно только заменить структуру while на структуру цикла repeat, и подумать какое условие будет после until
Записать в тетради число (28 апреля), классная работа, тема «Цикл с заданным условием окончания работы». Конспект с 1-й страницы. Задания 1-6
Домашняя работа
Записать в тетради число (28 апреля), домашняя работа, задания 1, 2
Задание 1
Напишите программу (используя цикл repeat), которая выводит на экран изображение смайлика n раз (желательно в 1 строку)
Задание 2
Напишите программу (используя цикл repeat), которая 10 раз выводит на экран ваши имя и фамилию.
6