Урок № 28. Вкладені алгоритмічні структури повторення та розгалуження

І. Опрацюйте теоретичний матеріал:

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

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

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

Складемо алгоритм встановлення будильника. На яке питання нам потрібно спочатку відповісти? (Завтра робочий день?). Якщо так, тоді встановимо будильник на 7 годин ранку та на цьому наш алгоритм завершиться. Якщо ж ні, тоді нам потрібно визначитись який із двох вихідних днів на тиждень. Можемо поставити питання: «Завтра субота?». Якщо так тоді встановимо будильник на 8 годин (поспимо трошки більше, але всеодно це робочий день). Якщо ні тоді наприклад встановимо будильник на дев’яту ранку.

Блок-схема алгоритму встановлення будильника

Розгалуження можуть будуватись і в іншому напрямку відповідей, але від цього й буде змінюватись положення послідовності команд:

Блок-схема “іншого” алгоритму встановлення будильника

Складемо програму (блок-схему) на визначення чи число ділиться на 6. Для того, щоб воно ділилось на 6 потрібно, щоб воно ділилось і на 2 і на 3. Щоб число ділилось на 2 потрібно, щоб воно закінчувалось на парну цифру Щоб число ділилось на 3 потрібно, щоб сума чисел ділилась на 3. Н-д: 132 = 1+3+2 = 6 ділиться на 3 тому все число ділиться на 3.
Спробуємо дати відповідь на питання (перевіряємо умову) чи число закінчується парною цифрою. Якщо ні, тоді число не ділиться на два. Це означає що і на 6 воно не ділиться. Якщо введене число закінчується на парне число, тоді потрібно буде знайти суму введених чисел. Знову перевіряємо умову. Сума чисел ділиться на 3? Якщо ні, тоді повідомимо результат, що число не ділиться на 3, а якщо ділиться тоді ділимо вхідне число на 6.

Поглянемо, яким чином відображаються вкладені розгалуження в алгоритмі Scratch. Наприклад, якщо натиснуто клавішу пропуск перемістимось на 10 кроків, а якщо натиснуто клавішу стрілку праворуч повернемось на 90 градусів за часовою стрілкою, інакше на 90 градусів проти часової стрілки. В даному алгоритмі є два розгалуження де одне вкладене в інше.

ІІ. Виконайте практичну роботу за інструктивною карткою

ІІІ. Домашнє завдання:
1. опрацюйте по підручнику пункт 21
2. складіть блок-схему алгоритму поданих розгалужень