Множинне розгалуження
Нова українська школа
Урок 35
Інформатика 6
teach-inf.com.ua
за підручником
Бондаренко О.О. та ін.
Множинне розгалуження
Вкладені розгалуження використовують, якщо в гілках if-else треба перевірити ще по одній додатковій умові,
а якщо запрограмувати розгалуження за трьома й більше гілками, — команду множинного розгалуження
if-elif-else.
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Команда if-elif
Опис виконання команди: залежно від значення змінних при перевірці умови вибрати дію, яку слід виконати.
Синтаксис неповної форми команди if-elif:
if <умова1>:
<команда 1>
elif <умова2>:
<команда 2>
elif <умоваЗ>:
<команда 3>
Гілок elif (elif — від англ. else if — інше якщо) може бути як завгодно багато. У гілках elif обов’язково мають бути записані логічні вирази.
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Команда if-elif
Якщо <умова 1> істинна
if <умова1>:
<команда 1>
elif <умова2>:
<команда 2>
elif <умоваЗ>:
<команда 3>
То виконується <команда 1>
І керування передається команді, наступній за if-elif.
Якщо <умова 1> хибна
То гілки elif перебираються послідовно до першої істинної умови.
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Команда if-elif
Після виконання відповідних їй вказівок, решта гілок elif пропускаються
if <умова1>:
<команда 1>
elif <умова2>:
<команда 2>
elif <умоваЗ>:
<команда 3>
і керування передається команді, записаній після if-elif.
Якщо умови у всіх гілках if-elif хибні, жодна з гілок виконана не буде.
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Команда if-elif
Розгляньте приклад
if s == 'Прямо підеш': print('коня загубиш')
elif s == 'Наліво підеш': print('себе загубиш')
elif s == 'Направо підеш': print('щастя знайдеш')
Герой української народної казки опинився на роздоріжжі. Нехай напрямок руху зберігається у змінній s:
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Команда if-elif
Розгляньте приклад
х = int(input('x = ? '))
у = int(input('y = ? '))
if х>0 and у>0: print('I чверть')
elif х<0 and у>0: print('II чверть')
elif х<0 and у<0: print('III чверть')
elif х>0 and у<0: print('IV чверть')
Перепишемо за допомогою if-elif код розв’язання задачі: визначити N — номер чверті, в якій розташована точка з координатами x, y (x ≠ 0, y ≠ 0).
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Команда if-elif-else
У прикладі складені умови, що перевіряються в гілках if-elif, охоплюють усі варіанти розташування точки.
х = int(input('x = ? '))
у = int(input('y = ? '))
if х>0 and у>0: print('I чверть')
elif х<0 and у>0: print('II чверть')
elif х<0 and у<0: print('III чверть')
elif х>0 and у<0: print('IV чверть')
Тож якась із гілок буде виконана, і гілка else у коді є зайвою.
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Команда if-elif-else
Якщо є вірогідність набуття змінною значення, яке не розглядається в умовах, то слід використовувати повну форму команди множинного розгалуження. Тобто додати гілку else і записати по ній команди, які слід виконати, якщо всі умови по гілках if-elif виявилися хибними.
Гілка else виконується, коли не виконується жодна з умов гілок if-elif.
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Команда if-elif-else
Синтаксис команди
if-elif-else:
if <умова 1>:
<команда 1>
elif <умова 2>:
<команда 2>
elif <умова 3>:
<команда 3>
else:
<команда 4>
Блок-схема команди if-elif-else
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Команда if-elif-else
х = int(input('x = ?'))
if х == 0:
print('Монстрів немає. Шлях вільний!')
elif х<3:
print('Стільки монстрів я легко подолаю')
elif х<5:
print('Доведеться позмагатися')
else:
print('Чac рятуватися втечею')
Запрограмуємо поведінку гравця в лабіринті, якщо х — кількість монстрів на шляху.
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Команда if-elif-else
Розгляньте приклад
x=int(input())
if x == 1: print('Це — 1')
elif x in [2, 3, 5, 7]: print('Цe - просте число')
elif x in [4, 6, 8, 9]: print('Це - складене число')
else:
print('Дане число не є одноцифровим')
Команда if-elif-else перевіряє, є натуральне одноцифрове число х простим чи складеним. У гілках elif перевіряється, чи є число х одним зі значень у списку.
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Команда if-elif-else
Розгляньте приклад
Запишемо команду для вибору повідомлення залежно від суми балів, отриманих ученицею.
1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
n<3
n<7
n<10
інші n
n=int(input())
if n<4: print('Baм доведеться виконати тест ще раз')
elif n<7: print('Baшa оцінка - задовільно')
elif n<10: print('Baшa оцінка - добре')
else: print('Baшa оцінка - відмінно')
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Команда if-elif-else
Розгляньте приклад
Напишемо програму, яка за номером місяця виводить назву пори року.
n = int(input('Уведіть номер місяця '))
if n == 12 or n == 1 or n == 2:
s = 'зима'
elif n<=5: s = 'весна'
elif n<=8: s = 'літо'
elif n<=11: s = 'осінь'
else: s = 'Такого номера місяця немає'
print(s)
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Команда if-elif-else
Використання команди множинного розгалуження допоможе запрограмувати вибір із великої кількості варіантів.
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Питання для самоперевірки
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Розгадайте ребус
Множинне
«Ребуси українською» © rebus1.com
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Домашнє завдання
Проаналізувати
с. 195-199
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Працюємо за комп’ютером
Сторінка
199
© Вивчаємо інформатику teach-inf.com.ua
Розділ 6
§ 30
Дякую за увагу!
Нова українська школа
Урок 35
Інформатика 6
teach-inf.com.ua
за підручником
Бондаренко О.О. та ін.