Определите класс Rectangle, который представляет прямоугольник. Через конструктор класс принимает ширину и длину и сохраняет их в атрибутах width и length соответственно. Также этом классе определите метод area, который возвращает площадь прямоугольника, и метод perimeter, который возвращает периметра прямоугольника.
После создания класса определите несколько объектов класса Rectangle и продемонстрируйте работу его методов.
class Rectangle:
def __init__(self, w, l):
self.width = w
self.length = l
def area(self):
return self.width * self.length
def perimeter(self):
return 2 * (self.width + self.length)
rect1 = Rectangle(40, 40)
print("rect1 area: ", rect1.area())
print("rect1 perimeter: ", rect1.perimeter())
rect2 = Rectangle(20, 30)
print("rect2 area: ", rect2.area())
print("rect2 perimeter: ", rect2.perimeter())
Создайте класс BankAccount, который представляет банковский счет. Определите в этом классе атрибуты account_number и balance, которые представляют номер счета и баланс. Через параметры конструктора передайте этим атрибутам начальные значения.
Также в классе определите метод add, который принимает некоторую сумму и добавляет ее на баланс счета. И определите метод withdraw, который принимает некоторую сумму и снимает ее с баланса. При этом с баланса нельзя снять больше, чем имеется. Если на балансе недостаточно средств, то пользователю должно выводиться соответствующее сообщение.
class BankAccount:
def __init__(self, number, sum):
self.account_number = number
self.balance = sum
print(f"Создан счет. Начальный баланс: {sum} единиц")
def add(self, sum):
self.balance = self.balance + sum
print(f"На счет зачислено: {sum} единиц")
def withdraw(self, sum):
if self.balance >= sum:
self.balance = self.balance - sum
print(f"Со счета снято: {sum} единиц")
else:
print("Недостаточно средств на счете")
acc1 = BankAccount("123456577", 1000)
acc1.add(200)
acc1.withdraw(500)
acc1.withdraw(300)
acc1.withdraw(900)