Уроки 50 - 51
§39. Ветвления и циклы
Содержание урока
Пример задачи
Исполнитель Раздвоитель
Алгоритм Евклида
Выводы. Интеллект-карта
Вопросы и задания
Практическа работа № 30 «Ветвления и циклы»
Пример задачи
Ключевые слова:
• ветвление
• цикл
• следование
• алгоритм Евклида
• диалоговая программа
В этом параграфе мы не будем изучать какие-то новые средства алгоритмического языка, а научимся строить более сложные программы, содержащие уже известные элементы: ветвления и циклы.
Пример задачи
Задача. Роботу нужно закрасить ряд клеток до клетки, отмеченной буквой Б (рис. 6.40).
Рис. 6.40
На пути Робота в некоторых местах есть стены, которые можно обойти сверху. Если стены нет, Робот должен экономить энергию и идти прямо в соседнюю клетку.
Нужен ли в этой задаче циклический алгоритм? Почему?
Известно ли количество шагов цикла? Какой тип цикла нужно использовать?
Что отличает клетку Б, где Роботу нужно остановиться, от других клеток на пути? Запишите обратное условие, при выполнении которого Робот движется дальше.
Какие два варианта действий есть у Робота на каждом шаге?
С помощью какой логической команды Робот может определить, какой вариант применить?
Составьте в тетради блок-схему алгоритма решения задачи, изображённой на рис. 6.40. Найдите три основные алгоритмические конструкции:
• следование (последовательное выполнение, линейный алгоритм);
• ветвление (выбор одного из двух вариантов в зависимости от выполнения условия);
• повторение (цикл).
В середине XX века было строго доказано, что этих конструкций достаточно для того, чтобы записать любой алгоритм, который только можно придумать.
Алгоритм решения любой задачи можно составить с помощью трёх конструкций — следования, ветвления и цикла. Эти конструкции называют базовыми алгоритмическими структурами.
Блок-схемы этих структур показаны на рис. 6.41.
Рис. 6.41
Может ли быть так, что тело цикла на рис. 6.41 не выполнится ни разу? Когда это может произойти?
Цикл, показанный на рис. 6.41, — это цикл с предусловием (условием, которое проверяется в начале цикла). Иногда условие проверяют после выполнения цикла — если выполняется условие выхода из цикла, то цикл заканчивается. Такой цикл называется циклом с постусловием, т. е. с проверкой условия в конце тела цикла. Вот его блок-схема (рис. 6.42).
Рис. 6.42
Может ли быть так, что тело цикла с постусловием не выполнится ни разу? Когда это может произойти?
Сравните циклы на рис. 6.41 и рис. 6.42. В каком из них при выполнении условия в блоке «выбор» цикл продолжается, а в каком — заканчивается?
Следующая страница Исполнитель Раздвоитель
Cкачать материалы урока