def test_conta_saque(): c = Cliente('nome', 99999999, '*****@*****.**') cc = Conta([c], 1, 100) cc.sacar(50) assert cc.saldo == 50, 'Saldo da conta incorreto' assert ('saque', 50) in cc.tirar_extrato(), ('Saque não registrado no extrato')
def main(): cliente = Pessoa('Edson', 34, '999.999.999-99') # Para conseguir utilizar os valores e os # métodos da conta, primeiramente é # necessário instância-la nova_conta = Conta() nova_conta.agencia = 12 nova_conta.numero = 100 nova_conta.cliente = cliente print('Uma nova conta foi criada') print(nova_conta.saldo) nova_conta.depositar(500) nova_conta.depositar(2000) nova_conta.sacar(2000) print(nova_conta.saldo) print(f'Agência: {nova_conta.agencia}') print(f'Número: {nova_conta.numero}') print(f'Cliente: {nova_conta.cliente.nome}') print('---- Movimentações ----') for mov in nova_conta.movimentacoes: print(f'Data: {mov.data}') print(f'Valor: {mov.valor}') print(f'Tipo: {mov.tipo}') print('\n')
def main(): #Para conseguir utilizar os valores e os métodos da conta, primeiramente é necessário instancia-la nova_conta = Conta() print('Uma nova conta for criada ') nova_conta.depositar(0) nova_conta.depositar(0) nova_conta.sacar() print(f'Novo saldo: {nova_conta.saldo}')
def test_conta_extrato_2(): c = Cliente('nome', 99999999, '*****@*****.**') cc = Conta([c], 1, 200) cc.sacar(150) cc.depositar(250) extrato = cc.tirar_extrato() assert len(extrato) == 3, ( 'O extrato deve conter duas entradas para esse teste') assert extrato[0] == ('saldo inicial', 200), ('A primeira entrada está incorreta') assert extrato[1] == ('saque', 150), ('A segunda entrada está incorreta') assert extrato[2] == ('deposito', 250), ('A terceira entrada está incorreta')
def test_conta_saque_erro(): c = Cliente('nome', 99999999, '*****@*****.**') cc = Conta([c], 1, 100) try: cc.sacar(150) except ValueError: assert cc.saldo == 100, ( 'O saldo não deve ser alterado quando o saque for inválido') assert ('saque', 150) not in cc.tirar_extrato(), ( 'Um saque inválido não deve ser registrado no extrato') except Exception: assert False, 'Erro diferente de ValueError para saque inválido' else: assert False, 'Permitiu a realização de um saque inválido'
class TestExercicio6(unittest.TestCase): def setUp(self): self.conta = Conta('Astrobaldo', 123, 100.00) def teste_consultar_dados_de_uma_conta(self): self.conta.dados |should| equal_to(['Astrobaldo', 123, 100.00]) def teste_sacar_valor_disponivel_de_uma_conta(self): self.conta.sacar(50) self.conta.dados[2] |should| equal_to(50.0) def teste_sacar_valor_nao_disponivel_de_uma_conta(self): self.conta.sacar(200) |should| equal_to("Saldo insuficiente!") self.conta.dados[2] |should| equal_to(100) def teste_depositar_cinquenta_reais_em_uma_conta(self): self.conta.depositar(50) self.conta.dados[2] |should| equal_to(150)
def main(): cliente = Pessoa ('Edson',34,'999.999.999-99') #Para conseguir utilizar os valores e os métodos da conta, primeiramente é necessário instancia-la nova_conta=Conta() nova_conta.agencia =12 nova_conta.numero =100 nova_conta.cliente = cliente print('Uma nova conta for criada ') nova_conta.depositar(2000) nova_conta.depositar(500) nova_conta.sacar(500) print(f'Novo saldo: {nova_conta.saldo}') print(f'Agência: {nova_conta.agencia}') print(f'Número: {nova_conta.numero}') print(f'Cliente: {nova_conta.cliente.nome}')
class ContaTeste(unittest.TestCase): def setUp(self): self.Conta1 = Conta('5555555', '0668', 1000, '87436981072', 'Thamyris Cardoso') self.Conta2 = Conta('222', '0698', 2500, '87436999079', 'Helena Leivas') def test_equal(self): self.assertEqual(self.Conta1.nome, 'Thamyris Cardoso') def test_saldo(self): self.assertGreaterEqual(self.Conta1.saldo, 1000) def test_sacarTrue(self): self.assertTrue(self.Conta1.sacar(500)) def test_depositarFalse(self): self.assertFalse(self.Conta1.depositar(1100)) def test_transfere(self): self.assertTrue(self.Conta1.transferencia(self.Conta2, 500))
Esse software podera ser capaz de criar Clientes e Contas Cada Cliente possui: Nome, CPF, Idade Cada Conta possui: Cliente(Dono), Saldo, Limite negativo, métodos: Sacar, Depositar, Consultar Saldo ''' from cliente import Cliente from conta import Conta print('BANCO DO TIO GUI') print('---------------------') cliente_1 = Cliente('Guilherme', 393595875, 17) conta_cliente_1 = Conta(cliente_1, 1000, 500) print( '\n1 - Consultar dados Cliente \n2 - Consultar Saldo \n3 - Sacar \n4 - Depositar' ) opcao = int(input('Escolha uma opção: ')) if opcao == 1: print('Nome:', conta_cliente_1.cliente.nome) print('CPF:', conta_cliente_1.cliente.cpf) print('Idade:', conta_cliente_1.cliente.idade) elif opcao == 2: print('Seu saldo é de: R$', conta_cliente_1.saldo) elif opcao == 3: conta_cliente_1.sacar(200) print('Você sacou e agora seu saldo é de: R$', conta_cliente_1.saldo) elif opcao == 4: conta_cliente_1.depositar(500) print('Você depositou e agora seu saldo é de: R$', conta_cliente_1.saldo) else: print('Numero Invalido')
''' print(' Informações do Cliente ') from cliente import Cliente usuario = Cliente('João', 14285740770, 24) print('Nome do cliente:', usuario.nome) print('cpf:', usuario.cpf) print('Idade do cliente:', usuario.idade) print(' Informações da conta do Cliente 2 ') from conta import Conta cc = Conta('Camila', 14085950670, 22, 100000.00, 1000.00) print('Nome do cliente:', cc.nome) print('cpf:', cc.cpf) print('Idade do cliente:', cc.idade) print('Saldo da CC:R${:.2f}'.format(cc.saldo)) print('limite do cheque especial:R${:.2f}'.format(cc.limite)) retirada = input('Qual o valor da retirada.\nDigite aqui: R$') cc.sacar(retirada) print('Seu novo saldo é R${:.2f}'.format(cc.saldo)) deposit = input('Qual o valor que você deseja depositar?\nDigite aqui:R$') cc.deposito(deposit) print('Seu novo saldo é R${:.2f}'.format(cc.saldo))
# Crie uma classe chamada Conta para simular as operações de uma conta corrente. Sua classe deverá ter os atributos Titular e Saldo, e os métodos Sacar e Depositar. Crie um objeto da classe Conta e teste os atributos e métodos implementados. Adicione uma regra no método Sacar, onde o usuário só poderá sacar se o Saldo for maior que zero, caso contrário mostre a mensagem na tela: "Você não tem saldo suficiente para essa operação." from conta import Conta p1 = Conta('Rafael', 1500) print(p1) p1.sacar(1600) p1.sacar(200) p1.depositar(3000)
# EXERCÍCIO: Crie um software de gerenciamento bancário. Esse software poderá ser capaz de criar clientes e contas. # Cada cliente possui nome, cpf e idade. Cada conta possui um cliente, saldo, limite e sacar, depositar e consultar # saldo. #----------------------------------------------------------------------------------------------------------------------# # importando classes from cliente import Cliente from conta import Conta # criando objeto cliente cliente1 = Cliente("Artur de Camargo Baldon", "02869821964", 39) # exibindo cliente print(cliente1) # criando objeto conta conta1 = Conta(cliente1.nome, 300, 1000) # exibindo conta print(conta1) # saque conta1.sacar(310) print(conta1.saldo) # deposito conta1.depositar(30) print(conta1.saldo) # consulta print(conta1.consulta())
from conta import Conta conta1 = Conta('matheus', 50, 21, 300) print(conta1.nome) conta1.depositar(300) print(conta1.saldo) conta1.consulta() conta1.sacar(100) conta1.consulta()
from conta import Conta from cliente import Cliente cliente1 = Cliente('Lucas Santos', '420.815.268-08', 21) print(cliente1) conta1 = Conta(cliente1, 1000, 3000) conta1.depositar(5000) conta1.depositar(1500) conta1.consultar_saldo() conta1.sacar(800) conta1.consultar_saldo() conta1.sacar(1700) conta1.consultar_saldo()
if conta_logada == None: conta_logada = Conta(numero_conta) contas.append(conta_logada) print("Bem vindo a sua conta") elif comando == 'fechar': with open('dados.txt', 'w') as dados: json.dump(contas, dados, default=converter_lista_json) exit() elif comando == 'deposito' and conta_logada != None: valor = int(input("Valor do depósito:")) conta_logada.depositar(valor) elif comando == 'saque' and conta_logada != None: valor = int(input("Valor do saque:")) conta_logada.sacar(valor) elif comando == 'saldo' and conta_logada != None: conta_logada.exibir_saldo() print(conta_logada.numero) elif comando == 'extrato' and conta_logada != None: conta_logada.exibir_extrato() elif comando == 'transferencia' and conta_logada != None: if conta_logada.saldo <= 0: print("Voce não tem saldo para transferencias") else: valor_transf = int(input("Valor da transferencia:")) if valor_transf > 0 and valor_transf <= conta_logada.saldo: conta_transf = int(input("conta de destino:"))
from cliente import Cliente from conta import Conta cliente1 = Cliente('Ranie', '123.456.789-10', 27) conta_rani = Conta(cliente1, 0, 1000) print(conta_rani.cliente.nome, conta_rani.consulta_saldo()) conta_rani.depositar(1000) print(conta_rani.consulta_saldo()) conta_rani.sacar(500) print(conta_rani.consulta_saldo()) conta_rani.sacar(1000) print(conta_rani.consulta_saldo())
from cliente import Cliente from conta import Conta cliente1 = Cliente('Breno', '123.456.789-10', 39) conta1 = Conta(cliente1, 10.00, 1000) print(conta1.cliente.nome, conta1.consultar_saldo()) conta1.depositar(1000) print(conta1.consultar_saldo()) conta1.sacar(1500) print(conta1.consultar_saldo())
from conta import Conta from cliente import Cliente cli = Cliente('José Luiz','79996854830') p1 = Conta(3432,0,cli) p1.depositar(5000.00) p1.listarExtrato() p1.sacar(7000) p1.sacar(85000) p1.sacar(6000) p1.listarExtrato()
from conta import Conta, Poupanca c1 = Conta('Daniel', 12345, 1000) c2 = Conta('Maria', 54321, 1000) # c1.transferir(1100, c2) # c2.render_juros() # print(c1.saldo) # print(c2.saldo) c2.sacar(500) print(c2.saldo) c1.sacar(500) print(c1.saldo)
raw_input except NameError: raw_input = input usuario = raw_input("Proprietário da conta: ") saldo = float(raw_input("Saldo do proprietário: ")) conta_usuario = Conta(usuario, saldo) while True: print(""" 1) Consultar saldo atual 2) Realizar depósito 3) Realizar saque """) escolha = raw_input("\033[0;36m Escolha: \033[0m") if escolha == '1': print("Saldo Atual: \033[0;33m R$ %.2f\033[0m\n\n"%conta_usuario.saldo) elif escolha == '2': deposito = float(raw_input("Valor a ser depositado: \033[0;32m")) print("\033[0m") conta_usuario.depositar(deposito) elif escolha == '3': saque = float(raw_input("Valor a ser sacado: \033[0;31m")) print("\033[0m") conta_usuario.sacar(saque)
from conta import Conta, Poupanca c1 = Conta('123', 1000) c2 = Poupanca('456', 500) print('sacar da conta 1 ', c1.sacar(200)) print('saldo conta1', c1.getsaldo()) print('saldo apos deposito: ', c1.depositar(100)) print('saldo apos transferencia: ', c1.transferir(100, c2)) print('saldo conta1', c1.getsaldo()) print('saldo conta2', c2.getsaldo())
class ClientThreading(threading.Thread): def __init__(self, clientAddress, clientsocket, sinc): threading.Thread.__init__(self) self._clientAddress = clienteAddress self._csocket = clientsocket self._sinc = sinc print("Nova conexão: ", clientAddress) self._contas = Conta() self._cpf_autenticado = None def run(self): while True: received = json.loads(self._csocket.recv(1024).decode()) if received["action"] == "cadastro": self.registrar(received) elif received["action"] == "autenticar": self.autenticar(received) elif received["action"] == "saque": self._sinc.acquire() self.saque(received) self._sinc.release() elif received["action"] == "deposito": self._sinc.acquire() self.deposito(received) self._sinc.release() elif received["action"] == "transferir": self._sinc.acquire() self.transferir(received) self._sinc.release() elif received["action"] == "extrato": self.extrato() elif received["action"] == "sair": self.sair() def registrar(self, received): cliente = Pessoa(received["nome"], received["sobrenome"], received["cpf"]) if self._contas.cadastra(cliente): msg = "Cadastro realizado com sucesso!" else: msg = "Este CPF já foi cadastrado antes" print(msg) self._csocket.send(msg.encode()) def autenticar(self, received): dicionario = {} conta = self._contas.busca(received["cpf"]) if (conta): self._contas.atualizar_conta(True, conta[0]) self._cpf_autenticado = conta[4] dicionario["autenticado"] = True dicionario["msg"] = f"{conta[2]} autenticado com sucesso!" else: dicionario["autenticado"] = False dicionario["msg"] = f"Esse CPF ainda não foi cadastrado!" print(dicionario["msg"]) dicionario = json.dumps(dicionario) self._csocket.send(dicionario.encode()) def saque(self, received): saque = self._contas.sacar(self._cpf_autenticado, received["valor"]) if (saque): msg = "Saque efetuado com sucesso!" else: msg = "Saldo insuficiente!" print(msg) self._csocket.send(msg.encode()) def deposito(self, received): self._contas.deposito(self._cpf_autenticado, received["valor"]) msg = "Depósito efetuado com sucesso!" print(msg) self._csocket.send(msg.encode()) def transferir(self, received): conta = self._contas.busca(received["cpf"]) if conta: if self._contas.transferir(self._cpf_autenticado, received["cpf"], received["valor"]): msg = "Transferência efetuada com sucesso!" else: msg = "Saldo para transferência insuficiente" else: msg = "CPF não encontrado!" print(msg) self._csocket.send(msg.encode()) def extrato(self): dicionario = dict() conta = self._contas.busca(self._cpf_autenticado) dicionario["numero"] = conta[1] dicionario["nome"] = f"{conta[2]} {conta[3]}" dicionario["cpf"] = conta[4] dicionario["saldo"] = conta[5] dicionario["limite"] = conta[6] dicionario = json.dumps(dicionario) self._csocket.send(dicionario.encode()) def sair(self): conta = self._contas.busca(self._cpf_autenticado) self._contas.atualizar_conta(False, conta[0]) self._cpf_autenticado = None msg = f"{conta[2]} saiu da conta!" print(msg) self._csocket.send(msg.encode()) self._contas.mostrar_contas()
''' EXERCÍCIO - AULA 9 - PYTHON BÁSICO - SOLYD TREINAMENTOS Crie um software de gerenciamento bancário Esse software poderá ser capaz de criar clientes e contas Cada cliente possui nome, cpf, idade Cada conta possui um cliente, saldo, limite, sacar, depositar e consultar_saldo ''' from cliente import Cliente from conta import Conta nome = input('Nome: ') cpf = input('CPF: ') idade = input('Idade: ') cliente1 = Cliente(nome, cpf, idade) conta1 = Conta(cliente1, 500, 2000) print(conta1.saldo) conta1.sacar(1000) print(conta1.consultar()) conta1.depositar(2000) print(conta1.consultar()) conta1.sacar(750) print(conta1.consultar())
print(conta1.saldo) print("") print( "Impressão de uma transferência de R$ 10.00 saindo da conta 1 e indo para a conta 2:" ) conta1.transferir(10, conta2) print("Saldo conta 2: R$ {}".format(conta2.saldo)) print("Saldo conta 1: R$ {}".format(conta1.saldo)) print("") print("Impressão do teste de alteração direta pelo método @limite.setter") conta1.limite = 2000 print("Limite da conta 1: {}".format(conta1.limite)) print( "Conta 1, número {} tem como titular o Sr. {} é o saldo e {} é o limite de {}" .format(conta1.numero, conta1.titular, conta1.saldo, conta1.limite)) print("") print("Impressão do teste da tentativa de saque de 5000:") conta1.sacar(5000) print("") print("O código do banco é: {}".format(Conta.codigo_bco( ))) #detalhe que estou pedindo informação diretamente da classe, não do objeto print( "A Conta 1, do banco {4} número {0} tem como titular o Sr. {1} é o saldo e {2} é o limite de {3}" .format(conta1.numero, conta1.titular, conta1.saldo, conta1.limite, conta1.codigo_bco()))
from conta import Conta, Cliente, Data, Historico data1 = Data("01", "janeiro", 2020) data2 = Data("02", "janeiro", 2020) cliente1 = Cliente("felipe", "ferreira", 123456789) cliente2 = Cliente("alisson", "saraiva", 987654321) conta1 = Conta("123-4", cliente1, 200, 1000, data1) conta2 = Conta("123-5", cliente2, 150, 3000, data2) conta1.depositar(50) conta1.sacar(30) conta1.transferir(conta2, 20) conta1.extrato() conta2.depositar(80) conta2.sacar(40) conta2.extrato() conta1.historico.imprimir()
from conta import Conta cliente00 = Conta('Alexia', 1990, 'Goiânia', '(62)99911-0000', '001.001.001-10', 0) print('Nome:', cliente00.nome) print('Nascimento:', cliente00.nasc) print('Localidade:', cliente00.cidade) print('Telefone:', cliente00.fone) print('CPF:', cliente00.cpf) print(cliente00) cliente00.depositar(20) print('Saldo:', cliente00.saldo) cliente00.sacar(15) print('Saldo:', cliente00.saldo) print(' ') cliente01 = Conta('Fulana', 1989, 'Goiânia', '(62)99911-0001', '021.011.021-10', 0) print('Nome:', cliente01.nome) print('Nascimento:', cliente01.nasc) print('Localidade:', cliente01.cidade) print('Telefone:', cliente01.fone) print('CPF:', cliente01.cpf) print(cliente01) cliente01.depositar(10000) print('Saldo:', cliente01.saldo) cliente01.sacar(750) print('Saldo:', cliente01.saldo)
from conta import Conta conta1 = Conta("2009", "David", 800.0) #mostrar para o usuario os dados atuais da conta print("Numero da conta:", conta1.numero, "\nCorrentista:", conta1.correntista, "\nSaldo disponivel:", conta1.saldo) novo_nome = input("\nDigite um novo nome para o correntista: ") conta1.alterar_nome(novo_nome) conta1.depositar(100) deucerto = conta1.sacar(20) if (deucerto): print("Saque efetuado com sucesso") else: print("Saldo insuficiente!") return conta1.depositar(100)
from cliente import Cliente from conta import Conta cliente1 = Cliente('0x00s4d', '011.001.111-01', 22) print(cliente1) conta1 = Conta(cliente1, 2000.55, 3000) print(conta1.cliente.nome, conta1.consulta_saldo()) conta1.depositar(550) print(conta1.consulta_saldo()) conta1.sacar(4000) print(conta1.consulta_saldo()) conta1.sacar(2000) print(conta1.consulta_saldo())
from cliente import Cliente from conta import Conta cliente1 = Cliente('Gui', '123.456.789-10', 27) print(cliente1) conta_do_gui = Conta(cliente1, 10.50, 1000) print(conta_do_gui.cliente.nome, conta_do_gui.consulta_saldo()) conta_do_gui.depositar(1000.40) print(conta_do_gui.consulta_saldo()) conta_do_gui.sacar(500) print(conta_do_gui.consulta_saldo()) conta_do_gui.sacar(1000) print(conta_do_gui.consulta_saldo())
from cliente import Cliente from conta import Conta cliente1 = Cliente("Daniel", "003", 18) print(cliente1.nome, cliente1.cpf, cliente1.idade) conta1 = Conta("Daniel", 500, 1000) print(conta1.nome_do_cliente, conta1.saldo, conta1.limite) conta1.sacar(501) print(conta1.saldo) conta1.depositar(1000) print(conta1.saldo)
from conta import Conta from client import Cliente client1 = Cliente('Vitor', '371.002.988.06', 29) print('Nome: ', client1.nome) print('CPF: ', client1.cpf) print('Idade: ', client1.idade) conta1 = Conta('123', 50, 'R$ 1000,00') print('Numero da conta: ', conta1.numero) print('saldo em conta: R$ ', conta1.saldo) print('limite da conta: ', conta1.limite) conta1.sacar(30) print('Saldo em conta: R$ ', conta1.saldo) conta1.deposito(50) print('Saldo em conta: R$ ', conta1.saldo)
from conta import Conta from cliente import Cliente cliente1 = Cliente('Erick', 20, '197.125.667-65') conta = Conta(cliente1, 400.60) conta.depositar(1000.40) conta.sacar(200.50) print(conta)