diff options
Diffstat (limited to 'day6')
| -rw-r--r-- | day6/task1/task1.py | 5 | ||||
| -rw-r--r-- | day6/task2/task2.py | 7 | ||||
| -rw-r--r-- | day6/task3/task3.py | 35 |
3 files changed, 47 insertions, 0 deletions
diff --git a/day6/task1/task1.py b/day6/task1/task1.py new file mode 100644 index 0000000..af3afbf --- /dev/null +++ b/day6/task1/task1.py @@ -0,0 +1,5 @@ +try: + a = int(input()) + print(100 / a) +except: + print('ошибка ввода') diff --git a/day6/task2/task2.py b/day6/task2/task2.py new file mode 100644 index 0000000..a95feae --- /dev/null +++ b/day6/task2/task2.py @@ -0,0 +1,7 @@ +try: + a = input() + print(100 / int(a)) +except ValueError as e: + print(e) +except ZeroDivisionError as e: + print(e) diff --git a/day6/task3/task3.py b/day6/task3/task3.py new file mode 100644 index 0000000..5541d36 --- /dev/null +++ b/day6/task3/task3.py @@ -0,0 +1,35 @@ +def divide(a, b): + if a > b: + import hahaha + + # В задании указано, что строго меньше, + # поэтому не else, а elif a < b + elif a < b: + import sys + + # Проверяем остаток + div, mod = divmod(a, b) + if mod == 0: + return div + else: + raise ArithmeticError(f'{a / b}') + + +try: + a = int(input()) + b = int(input()) + result = divide(a, b) + +except ArithmeticError as e: + print(f'Результат деления с остатком: {e}') + +# В задании написано отлавливать в отдельных except, +# но язык позволяет использовать более разумный синтаксис +except (ValueError, ZeroDivisionError, ModuleNotFoundError) as e: + print(e) + +except: + print('Непредвиденная ошибка') + +else: + print(f'Поделили успешно, вот вам результат: {result}') |