Урок 27. Алгоритмічна структура розгалуження
При розв'язуванні задач часто використовуються алгоритми з
розгалуженням, які передбачають виконання певних дій залежно від істинності
деякого висловлювання, що є умовою виконання певних команд.
Наприклад, алгоритм переходу дороги по пішохідному переходу, який регулюється світлофором: якщо горить зелене світло, слід переходити дорогу, в іншому разі — слід зупинитися перед пішохідним переходом.
Алгоритмічна структура, що дає змогу виконавцеві алгоритму вибрати
сценарій подальших дій залежно від істинності певного висловлювання,
називається розгалуженням.
Розрізняють дві форми структури розгалуження: повну та неповну. Структура
розгалуження повної форми схожа на
умовне висловлювання «Якщо — то — інакше», у якому після «то» та «інакше»
записують не висловлювання, а команди, які необхідно виконати залежно від
істинності висловлювання, записаного в умові. Її можна подати графічно.
Скорочену форму розгалуження використовують тоді, коли деяку послідовність команд слід виконати за
умови істинності висловлювання.
Структура розгалуження неповної форми схожа на умовне висловлювання «Якщо
— то», у я кому після «то» записують не висловлювання, а послідовність команд,
які необхідно виконати, коли висловлювання, записане в умові, є істинним. ЇЇ
можна подати графічно.
Для опису алгоритмів із розгалуженням у середовищі Скретч можна
використовувати блоки з групи Датчики. Ці
блоки можуть бути складовими відповідних команд, що передбачають виконання
певних дій після перевірки висловлювання на істинність чи хибність.
Складені умови, які використовують сполучники І, АБО, НЕ, у середовищі Скретч
можна описати за допомогою блоків:
із групи Оператори.
Наприклад, в алгоритмі в середовищі Скретч, виконавцем якого є Об'єкт 1, умову
«якщо Об'єкт 1 доторкається до Об'єкта 2 або доторкається межі вікна», можна
подати в такому вигляді:
Базову структуру розгалуження повної форми в середовищі Скретч можна
подати командою:
Наприклад, алгоритм, за яким при натисненні клавіші на клавіатурі розмір об'єкта збільшується
наполовину, інакше — зменшується на 10%, можна подати графічно.
Або фрагментом програми в середовищі Скретч.
Для реалізації розгалуження неповної форми в середовищі Скретч використовують
команду:
Наприклад, фрагмент алгоритму для середовища Скретч для малювання
різнокольорової ламаної, за яким колір ліній буде змінюватися після натиснення
кнопки миші, можна подати графічно.
Цей фрагмент алгоритму для середовища Скретч можна описати: