""" Модуль является результатом выполнения практической домашней работы по теме "Логические и условные операторы" :copyright: Сергей Ванюшкин :git: https://git.pi3c.ru/pi3c/StudyRepo_Synergy.git :license: MIT 2023г. """ import os def cls(): os.system("cls" if os.name == "nt" else "clear") def get_ticket(**kwargs) -> str: rates = { 0: "Полная стоимость билета", 1: "Билет со скидкой", 2: "Бесплатный билет", } rate = 0 if kwargs.get("age") in range(0, 12): rate = 2 elif kwargs.get("age") in range(12, 18) and kwargs.get("escort", False): rate = 1 return rates.get(rate, "Error") def add_buyer(): cls() print("#" * 25) print("#".ljust(23), "#") print("#", "\033[32m{}\033[0m ".format("Купить билет в кино").center(21), "#") print("#".ljust(23), "#") print("#" * 25) name = input("Ваше имя?: ") city = input("Ваш город?: ") try: age = int(input("Сколько вам полных лет?: ")) if age not in range(0, 150): raise ValueError except ValueError: print("Введен некорректный возраст. ") age = -1 if age <= 12: escort = True elif age < 18: escort = ( True if input("Вы с сопровождающим? (Да/Нет): ") in ("д", "Д", "Да", "да") else False ) else: escort = False cls() print("#" * 30) for i in range(11): if i in (1, 3, 5, 7, 9): print("#".ljust(28), "#") if i == 0: print("#", "Билет".center(26), "#") if i == 2: print("#", name.ljust(26), "#") if i == 4: print("#", city.ljust(26), "#") if i == 6: print("#", ("Возраст: " + str(age)).ljust(26), "#") if i == 8: print( "#", ("С сопровождающим" if escort else "Без сопровождения").ljust(26), "#", ) if i == 10: print( "#", get_ticket(name=name, city=city, age=age, escort=escort).center(26), "#", ) print("#" * 30) add_buyer() while True: if input("Купить еще билет? (Да/Нет): ") in ("д", "Д", "Да", "да"): add_buyer() else: break