Алгоритми з розгалуженнями. Розв'язування задач з використанням алгоритмів з розгалуженнями

Для мотивації:

Якщо ви недостатньо добре розумієте англійську мову (ну так як і я) - ввімкніть субтитри!

До речі: перед вами Білл Гейтс - засновник компанії Microsoft, автор операційної системи Windows та один з найбагатших людей світу!

Розглянемо лінійний  алгоритм ранкового збирання до школи:

  • прокинутися;
  • зробити ранковий туалет;
  • одягнутися;
  • поснідати;
  • зібрати речі;
  • одягнути верхній одяг;
  • вийти до школи.

В такому простому алгоритмі в зразу ж знайдете недоліки. А що робити, якщо виконавець себе погано почуває (захворів), а якщо вже зібрав речі ввечері, а якщо не встиг напередодні вивчити всі уроки і необхідно щось повторити, а що значить одягнути верхній одяг (він залежить від пори року, погоди тощо). Якщо ж спробувати прослідкувати за вашою поведінкою на протязі дня, то з'ясується, що майже ніколи ви не дієте за лінійним алгоритмом. Весь час ви аналізуєте ситуацію, змінюєте свою поведінку та свої плани, пристосовуєтесь до обставин. 

Тому набагато частіше зустрічається другий тип алгоритму - умовний або алгоритм з розгалуженням. Цей алгоритм обов'язково містить в собі хоча б одну умову (як правило, їх набагато більше) і виконується він в залежності від цієї умови.

Розгалуження (алгоритм з умовою) – базова алгоритмічна структура, яка передбачає виконання однієї із зазначених дій в залежності від справедливості поставленої умови. 

Умова – логічний вираз, який може набувати лише одного з двох значень: True (істинна) або False (хибність)

Значення True (істина) та False (хиба) називають логічними константами.

При розв’язуванні задач часто використовуються алгоритми з розгалуженням, які передбачають виконання певних дій залежно від істинності деякого висловлювання, що є умовою виконання певних команд. Наприклад, алгоритм переходу дороги по пішохідному переходу, який регулюється світлофором: якщо горить зелене світ¬ло, слід переходити дорогу, в іншому разі — слід зупинитися перед пішохідним переходом.

Алгоритмом із розгалуженням можна вважати алгоритм здійснення дзвінка з мобільного телефону: якщо є кошти на рахунку і мережа доступна, то ти набираєш номер адресата, інакше виклик не буде здійснено. При побудові таких алгоритмів використовують алгоритмічну структуру розгалуження.

Алгоритмічна структура, що дає змогу виконавцеві алгоритму вибрати сценарій подальших дій залежно від істинності певного висловлювання, називається розгалуженням.

Типи розгалужень:

Повне розгалуження:

Повне розгалуження – передбачає виконання дій і при істинності і при хибності поставленої умови/

 

Реалізація в Scratch:

 

Неповне розгалуження

Неповне розгалуження – передбачає виконання дії, лише при істинності поставленої умови

Реалізація в Scratch:

 Умови

Умова - логічний вираз, про який можна однозначно сказати - істинний він (True) чи хибний (False).

Для створення умов ми можемо використовувати команди з групи датчики або оператори:

 

Окрім того, ми можемо об'єднувати прості умови у складені, використовуючи логічні функції:

Відеоматеріали

 Завдання:

1. Опрацювати статтю та законспектувати основні моменти.

2. Переглянути запропоноване відео (подякувати його авторам - поставити вподобайку!)

3. Спробувати виконати завдання запропоновані у відеоматеріалах.

4. Повторити попередню тему і підготуватися до тестування!

5. Мити руки і дотримуватися правил карантину!