Просмотр содержимого документа
«Презентация "Ветвление и последовательная детализация"»
Ветвление и последовательная детализация алгоритма
Цикл
Решим задачу: исходное положение ГРИС – у левого края поля, направление – на восток. Требуется нарисовать горизонтальную линию через весь экран.
Задачу можно решить, написав 15 раз команду шаг (если поперёк поля рисунка 15 шагов).
Цикл
Короткий вариант:
пока впереди не край повторять
нц
шаг
кц
Здесь использована команда, которая называется циклом .
Цикл
Формат команды цикла:
пока повторять
нц
кц
Служебное слово нц обозначает начало цикла , кц – конец цикла .
Ветвление
- Познакомимся еще с одной командой ГРИС. Она называется командой ветвления . Формат команды ветвления такой:
если то иначе кв
- Служебное слово кв обозначает конец ветвления .
— это одна или несколько следующих друг за другом команд. Если справедливо, то выполняется , в противном случае — . Пример показан на рис. 5.12. Такое ветвление называется полным . " width="640"
Полное ветвление
По-прежнему ГРИС может проверять только два условия: «впереди край?» или «впереди не край?». Серия — это одна или несколько следующих друг за другом команд. Если справедливо, то
выполняется
,
в противном
случае —
.
Пример показан на рис. 5.12.
Такое ветвление называется полным .
Неполная форма ветвления
- В некоторых случаях используется неполная форма команды ветвления. Например:
если впереди край то поворот кв
ветвления имеет следующий формат:
если то кв
- Здесь выполняется, если справедливо.
Пример задачи с двухшаговой детализацией
- Задача: Построить орнамент, состоящий из квадратов, расположенных по краю поля. Исходное положение ГРИС — в верхнем левом углу, направление на юг (рис. 5.14).
цепочку квадратов от
края до края поля,
назовем РЯД. Процедуру, рисующую один квадрат, назовем КВАДРАТ.
Сначала напишем основную программу:
программа Орнамент нач сделай РЯД поворот сделай РЯД поворот сделай РЯД поворот сделай РЯД кон
Теперь напишем процедуры РЯД и КВАДРАТ:
В процедуре РЯД в теле цикла содержится неполное ветвление. Структуру такого алгоритма можно назвать так: цикл с вложенным ветвлением.
На рис. 5.15 приведена блок-схема процедуры РЯД:
Составление этой программы потребовало двух шагов детализации алгоритма, которые выполнялись в такой последовательности:
- Теперь вам известны все команды управления графическим исполнителем. Их можно разделить на три группы: простые команды; команда обращения к процедуре; структурные команды. К третьей группе относятся
команды цикла и ветвления.
Задания:
Путем пошаговой детализации составьте программы управления графическим исполнителем для решения следующих задач: • расчертить все поле горизонтальными пунктирными линиями; • нарисовать квадраты во всех четырех углах поля; • расчертить все поле в клетку со стороной, равной шагу.
Вопросы:
- 1. Что такое пошаговая детализация? 2. Из каких команд могут состоять вспомогательные алгоритмы последнего уровня детализации? 3. Какой формат имеет команда ветвления? Какие действия исполнителя она определяет? 4. Чем отличается полное ветвление от неполного?