-
Notifications
You must be signed in to change notification settings - Fork 0
/
Conta_Bancaria.py
63 lines (49 loc) · 1.84 KB
/
Conta_Bancaria.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
class ContaBancaria():
def __init__(self, saldo, titular):
self.saldo = float(saldo)
self.titular = titular
def __str__(self):
return f'{self.titular} --> {self.saldo}'
def depositar(self, money):
self.saldo += money
def sacar(self, money):
self.saldo -= money
class Itau(ContaBancaria):
def transferencia(self, valor, destino):
total = (valor + (valor * 0.01))
if not isinstance(destino, Bradesco):
print("Transição inválida! Tente novamente...")
elif destino.titular == self.titular:
print("Transição inválida")
elif total > self.saldo:
print("Saldo insuficiente!")
else:
self.sacar(total)
destino.depositar(valor)
print("Transferência realizada com sucesso!")
class Bradesco(ContaBancaria):
def transferencia(self, valor, destino):
total = (valor + (valor * 0.005)+5)
if not isinstance(destino, Itau):
print("Transição inválida! Tente novamente...")
elif destino.titular == self.titular:
print("Transição inválida")
elif total > self.saldo:
print("Saldo insuficiente!")
else:
self.sacar(total)
destino.depositar(valor)
print("Transferência realizada com sucesso!")
class Conta_teste(ContaBancaria):
def transferir(self, valor, destino):
self.sacar(valor + ((valor * 0.20)/100) + 10)
destino.depositar(valor)
conta_1 = Itau(3500, "Patricia")
conta_2 = Bradesco(3000,"Pedro")
conta_bancaria = Conta_teste(5400, "Julio Cesar")
conta_1.transferencia(500, conta_2)
print(conta_1)
conta_2.transferencia(300, conta_1)
print(conta_2)
conta_1.transferencia(400, conta_bancaria)
print(conta_1)