Розгалуження в Python
Оператор (у програмуванні) – це знак або вираз, який позначає виконання певної дії. Наприклад, математичні оператори додавання(+), віднімання(-), множення(*), ділення(/).
Сьогодні ми розглянемо логічні оператори. Це такі вирази, що набувають тільки двох значень True і False.
Логічні оператори:
> більше
< менше
>= більше рівне
<= менше рівне
== рівне
!= або <> не дорівнює
Службові слова для складних умов:
and ( і) виконується тоді, коли виконуються обидві умови
or ( або) виконується тоді, коли виконується хоча б одна умова
not (не) заперечення
in (у) перевірка чи міститься елемент у послідовності
Оператор розгалуження (умовний оператор) забезпечує обчислення певного виразу (послідовності виразів) лише за умови істинності деякої умови.
Команди розгалуження бувають таких видів:
Неповне (одноальтернативне)
if <логічний вираз>:
< блок команд>
Повне(двоальтернативне)
if <логічний вираз>:
< блок команд 1>
else:
< блок команд 2>
Багатоальтернативне (каскадне)
if <логічний вираз>:
< блок команд 1>
elif <логічний вираз>:
< блок команд 2>
elif <логічний вираз>:
< блок команд 3>
......................
elif <логічний вираз>:
< блок команд n-1>
else:
< блок команд n>
Вкладене
if <логічний вираз>:
< блок команд 1>
if <логічний вираз>:
< блок команд 1>
else:
< блок команд n-1>
else:
< блок команд n>
Приклад 1. Ввести з клавіатури число. Вивести повідомлення, якщо число парне.
Розв'язання:
n = int(input("n = "))
if n%2==0:
print(n ," парне")
Приклад 2. Ввести з клавіатури число. Вивести повідомлення, чи ділиться це число на 5.
Розв'язання:
n = int(input("n = "))
if n%5 == 0:
print(n ," ділиться на 5")
else:
print(n ," не ділиться на 5")
Приклад 3. Введіть номер фігури, та виведіть її периметр.
Розв'язання:
figure = input("Виберіть фігуру (1-прямокутник, 2-трикутник, 3-круг): ")
if figure=='1':
print("Введіть сторони прямокутника:")
a = float(input("a = "))
b = float(input("b = "))
p = (a+b)*2
print("Периметр прямокутника=",p)
elif figure == '2':
print("Введіть сторони трикутника:")
a = float(input("a = "))
b = float(input("b = "))
c = float(input("c = "))
p = a+b+c
print("Периметр трикутника=",p)
elif figure == '3':
print("Введіть радіус кола:")
a = float(input("a = "))
p = 2*pi*a
print("Довжина круга",p)
else:
print("Помилка вводу")
Задача 1. Напишіть програму, в якій користувач вводить значення температури, і, якщо це значення менше або дорівнює 0 градусів Цельсія, необхідно вивести повідомлення "Доки буде так холодно?". Якщо ж температура становить більше 0 і менше 10 градусів Цельсія повідомлення буде "Холодно", у інших випадках"Хороша погода. Пішли гуляти".
Задача 2. Вдосконалити задачу 1 для випадку, якщо температура бульша за 30 градусів по Цельсію
Задача 3. Скласти програму введення оцінки Р, яку отримав учень, виведення тексту “Молодець!”, якщо Р>=9, “Добре!”, якщо менше 9 і P>5 і “Ліньтяй!”, якщо P<=5.
Задача 4. Напишіть програму, яка виводить назви введених чисел. Користувач вводить ціле число. Якщо це число або 1 або 2 або 3, то виводиться повідомлення - назва числа, відповідно, One, Two, Three. В усіх інших випадках виводиться слово Unknown.
Задача 5. Ввести n- вік людини. Програма має вивести повідомлення "Вам n рік". Слово "рік" вивести в правильному відмінку (рік, роки, років).
Задача6. Ввести дійсні числа а та b та обчислити значення виразу (6a - 2b) / (9a + 5b)
Задача7. Ввести вік людини та вивести повідомлення до якої категорії населення людина відноситься: малюк, школяр, молодь, дорослий, пенсійний вік.
Задача8. Скласти програму для перевірки агрегатного стану води, маючи її температуру у градусах Цельсія.
Задача9. Ввести три цілих числа. Визначте, скільки серед них співпадають. Програма повинна вивести одне з повідомлень: "Всі числа однакові","Два числа співпадають" або " Всі числа різні".
Задача 10. Ввести три цілих числа. Посортувати їх у порядку зростання
Підказка. Можна так записувати порівняння трьох чисел:
if x <= y <= z:
print(x, y, z)
Задача11. Перевірити, чи задане трицифрове число ділиться на суму своїх цифр
Задача12. Перевірити, чи задане чотирицифрове число є паліндромом
Задача13. Ввести три цілі тризначні числа та число а- однозначне. Знайти суму тих чисел, які починаються з числа а.
Задача14. Ввести ціле число, якщо воно належить діапазону [5;50),то збільшити його на 100, а інакше не змінювати
Задача15. Ввести ціле число, якщо воно належить діапазону [5;50) або діапазону [100;200], то збільшити його на 100, а інакше не змінювати
Задача16. Ввести ціле число, якщо воно належить діапазону [5;50), то збільшити його на 100, а інакше, якщо воно лежить справа від діапазону то збільшити його у два рази, а інакше зменшити на величину самого числа
Задача17. Ввести слово. Якщо кількість символів в слові парна, то надрукувати дане слово два рази підряд, а інакше надрукувати три рази підряд.
s=input('Введіть слово ')
n=len(s)
if n%2==0:
print(2*s)
else:
print(3*s)
Задача18. Ввести слово, якщо кількість символів чотири, то подвоїти кожен символ, якщо кількість символів три, то потроїти кожен символ в інших випадках надрукувати слово без останнього символа.
s=input('Введіть слово ')
n=len(s)
if n==4:
s1=s[0]
s2=s[1]
s3=s[2]
s4=s[3]
t=s[0]+s[0]+s[1]+s[1]+s[2]+s[2]+s[3]+s[3]
print(t)
elif n==3:
s1=s[0]
s2=s[1]
s3=s[2]
t=s[0]+s[0]+s[0]+s[1]+s[1]+s[1]+s[2]+s[2]+s[2]
print(t)
else:
t=s[0:n-1]
print(t)