commit 806619e58c8a66edcd5270a616fc904984678367 Author: PeseC Date: Sat Oct 29 01:48:17 2022 +0400 add main.py and error.py diff --git a/error.py b/error.py new file mode 100644 index 0000000..2671569 --- /dev/null +++ b/error.py @@ -0,0 +1,2 @@ +class NotFoundError(Exception): + """Надо вводить щзнак а не числа""" diff --git a/main.py b/main.py new file mode 100644 index 0000000..0fcfbba --- /dev/null +++ b/main.py @@ -0,0 +1,57 @@ +import os +from error import NotFoundError +from colorama import init, Fore + +init(autoreset=True) +################################################################### +def calc(first, sign, second): + match sign: + case "*": + answer = first * second + case "/": + answer = first / second + case "//": + answer = first // second + case "+": + answer = first + second + case "-": + answer = first - second + case other: + raise NotFoundError("Руки убрал от клавы, пианист блин...") + return answer + + +################################################################### +while True: + try: + os.system("cls") + print( + Fore.GREEN + "Ваш ответ:", + calc( + first=int(input(Fore.BLUE + "Введите первое число: ")), + sign=input(Fore.BLUE + "Выберите действие: "), + second=int(input(Fore.BLUE + "Введите второе число: ")), + ), + ) + + except ValueError: + os.system("cls") + print(Fore.RED + "Приятель, числа надо вводить, ЧИСЛА!\nЗаново!") + except ZeroDivisionError: + os.system("cls") + print(Fore.RED + "Я тебя сам сейчас на ноль поделю!!!\nЗаново!") + except NotFoundError: + os.system("cls") + print(Fore.RED + "Руки убрал от клавы, пианист блин...\nЗаново!") + + pre_end = input( + Fore.BLUE + + "Для продолжения нажмите Enter.\nЕсли хотите закончить работу введите end.\n " + ) + + if pre_end == "end": + print( + Fore.BLUE + + "Спасибо, за то что воспользовались услугами компании ООО'Кальк'.\nС вас много деняг." + ) + break