summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--day6/task3/task3.py35
1 files changed, 35 insertions, 0 deletions
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}')