|
@@ -0,0 +1,57 @@
|
|
|
+import random
|
|
|
+
|
|
|
+# Класс Coin имитирует монету, которую
|
|
|
+# можно подбрасывать (теперь это модуль, который хранится в файле).
|
|
|
+
|
|
|
+class Coin:
|
|
|
+
|
|
|
+ # Метод __init__ инициализирует
|
|
|
+ # атрибут данных __sideup значением 'Орел'.
|
|
|
+
|
|
|
+ def __init__(self) -> None:
|
|
|
+ self.__sideup = 'Орел'
|
|
|
+
|
|
|
+ # Метод toss генерирует случайное число
|
|
|
+ # в диапазоне от 0 до 1. Если это число
|
|
|
+ # равно 0, то __sideup получает значение 'Орел'.
|
|
|
+ # В противном случае sideup получает значение 'Решка'.
|
|
|
+
|
|
|
+ def toss(self):
|
|
|
+ if random.randint(0, 1) == 0:
|
|
|
+ self.__sideup = 'Орел'
|
|
|
+ else:
|
|
|
+ self.__sideup = 'Решка'
|
|
|
+
|
|
|
+ def get_sideup(self):
|
|
|
+ return self.__sideup
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+# Класс BankAccount имитирует банковский счет.
|
|
|
+
|
|
|
+class BankAccaunt:
|
|
|
+
|
|
|
+ # Метод __init__ принимает аргумент
|
|
|
+ # с остатком на счете.
|
|
|
+ # Он присваивается атрибуту __balance.
|
|
|
+
|
|
|
+ def __init__(self, bal) -> None:
|
|
|
+ self.__balance = bal
|
|
|
+
|
|
|
+ # Метод __str__ вызывается не напрямую, а автоматически
|
|
|
+ # во время передачи объекта в качестве аргумента в функцию print
|
|
|
+
|
|
|
+ def __str__(self) -> str:
|
|
|
+ return f'Остаток составляет: ${self.__balance:,.2f}'
|
|
|
+
|
|
|
+ def deposit(self, amount):
|
|
|
+ self.__balance += amount
|
|
|
+
|
|
|
+ def withdraw(self, amount):
|
|
|
+ if self.__balance >= amount:
|
|
|
+ self.__balance -= amount
|
|
|
+ else:
|
|
|
+ print('Ошибка: недостаточно средств')
|
|
|
+
|
|
|
+ def get_balance(self):
|
|
|
+ return self.__balance
|