ЗАПИТАННЯ ТА ЗАВДАННЯ В ТЕКСТІ ПАРАГРАФА
Розгляньте зображення (с. 129). Які умови впливають на дії людей?
На дії людей впливають такі умови: сигнал світлофора (червоний чи зелений) для пішоходів та велосипедистів, а також ігрова ситуація на баскетбольному майданчику (позиція гравців, наявність м’яча, час гри).
Розглянь зображення (с. 130). В яких життєвих ситуаціях ви стикаєтеся з вибором?
З вибором ми стикаємося у таких ситуаціях:
- Вибір напрямку руху за вказівниками (якою дорогою піти чи поїхати).
- Вибір товарів, наприклад тканини чи одягу, за певними критеріями (колір, якість).
- Вибір маршруту на складному перехресті або розв’язці доріг.
Порівняйте блок-схему неповного розгалуження і відповідну команду (с. 131).
У блок-схемі неповного розгалуження передбачено дію лише для гілки «Так» (якщо умова істинна). Якщо відповідь «Ні», алгоритм просто переходить до наступної команди за межами розгалуження. В Скретч цій структурі відповідає блок «якщо — то», де команди всередині блоку виконуються тільки тоді, коли умова в заголовку справджується.
Розробіть програму для реалізації алгоритму з повним розгалуженням, аналогічну програмі 2 (с. 132).
Програма для ситуації з перевіркою спраги:
- Запитати «Хочеш пити?» і чекати.
- Якщо відповідь = «так», то говорити «Налий собі води!», інакше говорити «Можна продовжувати роботу».
Порівняйте блок-схему повного розгалуження і відповідну команду (с. 132).
Блок-схема повного розгалуження має дві окремі гілки: «Так» (Команда 1) і «Ні» (Команда 2). Виконавець обов’язково виконає одну з цих двох дій. У Скретч це реалізовано блоком «якщо — то — інакше»: якщо умова істинна, виконуються команди в першій частині блока, якщо хибна — команди в частині «інакше».
Задача 1. Проаналізуйте поданий скрипт із динозавром (с. 132):
- Який вид розгалуження реалізований у програмі?
У програмі реалізовано повне розгалуження («якщо — то — інакше»). - Яку умову містить команда розгалуження?
Умова: «торкається кольору?» (блакитного). - Що відбувається у разі виконання / невиконання умови?
Якщо умова виконується (динозавр торкається блакитного кольору), він скаже «Привіт!», якщо не виконується — він змінить свій розмір на 10.
Задача 2. Визначте, для якої задачі складено поданий скрипт (с. 133):
- Який вид розгалуження реалізований у програмі?
Реалізовано неповне розгалуження («якщо — то»). - Яку умову містить команда розгалуження?
Умова: «торкається кольору?» (блакитного). - Що відбувається в разі виконання / невиконання умови?
У разі виконання умови (торкання кольору) колір спрайта зміниться (ефект «колір» на 25). Якщо умова не виконується, жодних дій не відбувається, і спрайт просто переміщується на 50 кроків (оскільки ця команда стоїть перед розгалуженням).
ЗАПИТАННЯ ДЛЯ САМОПЕРЕВІРКИ (с. 133)
1. Що таке розгалуження?
Розгалуження — це алгоритмічна структура, яка забезпечує виконання тих чи інших команд залежно від істинності певної умови.
2. Що таке повне і неповне розгалуження?
Повне розгалуження містить дві гілки дій: одну для випадку, коли умова істинна, і другу — коли умова хибна. Неповне розгалуження містить дії лише для випадку, коли умова істинна.
3. Як подається розгалуження на блок-схемі?
На блок-схемі розгалуження подається у вигляді ромба, всередині якого записана умова. Від ромба йдуть дві стрілки: «Так» (умова виконується) та «Ні» (умова не виконується).
4. Які команди середовища Скретч призначені для подання розгалуження?
Для неповного розгалуження використовується блок «якщо <умова> то», а для повного — блок «якщо <умова> то … інакше …».
ТРЕНУВАЛЬНІ ВПРАВИ (с. 133)
5. Наведіть приклади алгоритмів із повним і неповним розгалуженням із повсякденного життя та подайте їх за допомогою блок-схем.
Приклад неповного розгалуження:
Умова: «Чи є вдома хліб?».
Гілка «Ні»: «Купити хліб». (Якщо хліб є, жодних додаткових дій не потрібно).
Приклад повного розгалуження:
Умова: «На вулиці йде дощ?».
Гілка «Так»: «Взяти парасольку».
Гілка «Ні»: «Взяти сонцезахисні окуляри».
6. Розгляньте скрипт (внизу с. 133). Поясніть, який тип алгоритму реалізований? Що є результатом виконання скрипта?
Реалізовано алгоритм із повним розгалуженням. Результат: якщо спрайт торкається «Спрайт1», він скаже «Привіт!» протягом 2 секунд, якщо не торкається — він подумає «Хмм…» протягом 2 секунд.
ПРАКТИЧНІ ЗАВДАННЯ (с. 134)
7. Створіть алгоритм із неповним розгалуженням у середовищі Скретч.
Програма має запитувати: «Світло червоне?». Якщо користувач введе «так», котик повинен сказати «Стій!».
8. Удоскональте програму, створену в завданні 7, додавши команди, які реалізують інші правила поведінки на пішохідному переході із світлофором.
Удосконалений алгоритм (повне розгалуження):
- Запитати «Світло червоне?» та чекати.
- Якщо «відповідь = так», то говорити «Стій!», інакше запитати «Світло зелене?». Якщо «відповідь = так», то говорити «Йди!».
ТВОРЧЕ ЗАВДАННЯ (с. 134)
9. Складіть алгоритм: а) з повним розгалуженням; б) із двома неповними розгалуженнями для реалізації дій казкового персонажа.
Приклад для Іллі Муромця біля каменя (повне розгалуження):
ЯКЩО поїдеш направо, ТО коня втратиш, ІНАКШЕ (якщо поїдеш наліво) голову складеш.
Приклад (два неповних розгалуження):
- ЯКЩО зустрів Солов’я-Розбійника, ТО свищи у відповідь.
- ЯКЩО знайшов меч-кладенець, ТО бери його з собою.
ІНТЕЛЕКТУАЛЬНА ХВИЛИНКА (с. 134)
10. Розв’яжіть задачі на зважування.
1) Відомо, що серед 7 однакових на вигляд монет одна фальшива — її маса більша. Як за два зважування на шалькових терезах без гир знайти фальшиву монету?
Перше зважування: кладемо по 3 монети на кожну шальку, 1 залишаємо.
- Якщо терези в рівновазі — фальшива та, що залишилася.
- Якщо одна шалька переважила — фальшива серед тих трьох, що на ній.
Друге зважування: з важчої трійки беремо 2 монети і кладемо по одній на шальки.
- Якщо терези в рівновазі — фальшива третя монета з трійки.
- Якщо одна переважила — вона і є фальшивою.
2) Як за допомогою шалькових терезів без гир розділити 16 кг крупи на дві частини — 7 кг і 9 кг. Скільки знадобиться зважувань?
Знадобиться 4 зважування:
- 16 кг ділимо навпіл: 8 кг і 8 кг.
- Одні 8 кг ділимо навпіл: 4 кг і 4 кг.
- Одні 4 кг ділимо навпіл: 2 кг і 2 кг.
- Одні 2 кг ділимо навпіл: 1 кг і 1 кг.
Тепер додаємо частини: 8 кг + 1 кг = 9 кг. Решта (8 кг – 1 кг) складе 7 кг.
3) Господиня має шалькові терези та гирю масою 100 г. Як їй відміряти 700 г крупи за три зважування?
- Зважуємо 100 г крупи за допомогою гирі. (Маємо 100 г крупи).
- Кладемо на одну шальку гирю 100 г і вже відміряні 100 г крупи. Відважуємо на другій шальці ще 200 г крупи. (Разом маємо 100 + 200 = 300 г).
- Кладемо на одну шальку гирю 100 г і всі 300 г крупи. Відважуємо на другій шальці ще 400 г крупи.
Разом: 300 г + 400 г = 700 г крупи.
