Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

[Projeto] proejeto de lógica em python

# criando um caixa eletrônico de um usuário qualquer
nome_usuario = input('Como deseja ser chamado? ')
print(f'seja bem vindo, {nome_usuario}!')

senha_definida = 70908
senha_usuario = int(input('Digite a senha: ')) # Guarda o valor APENAS UMA VEZ

senha_correta = (senha_definida == senha_usuario) #Calcula/compara apenas uma vez com o valor definido 

while not senha_correta: 
  senha_usuario = int(input('SENHA INCORRETA!\nDigite a senha novamente: ')) # Aqui ele recebe denovo o valor da variável, dessa vez armazenando dentro do while para dar uma nova chance 
  senha_correta = (senha_definida == senha_usuario) #calculado/comparando com o valor definido durante o while(loop)


print('Senha correta! Acesso liberado.\n\n\n\n\n\n')

# Será a mesma lógica, entretando com a questão 
saldo_conta = 10000
saldo_saque = int(input(f' O valor limite de saque é: R${saldo_conta} Digite o valor de saque novamente,{nome_usuario}: '))

saldo_disponivel = (saldo_conta >= saldo_saque)

while not saldo_disponivel: 
  saldo_saque = int(input(f'VALOR INDISPONÍVEL! O valor limite de saque é: R${saldo_conta} Digite o valor de saque novamente,{nome_usuario}: '))
  saldo_disponivel = (saldo_conta >= saldo_saque)

print('Seu valor foi aceito com sucesso! Preparando saque...')

saída
[15]

saldo_disponivel = (saldo_limite >= saldo_saque) #saldo disponível é o saldo saque NÃO podendo ser maior que o saldo limite 

while not saldo_disponivel: #enquanto saldo limite for menor que saldo saque
  saldo_saque = int(input(f'VALOR INDISPONÍVEL! O valor limite de saque é: R${saldo_limite} Digite o valor de saque novamente,{nome_usuario}: '))
  saldo_disponivel = (saldo_limite >= saldo_saque)

print('Seu valor foi aceito com sucesso! Preparando saque...')

#Debitando o valor 

Como deseja ser chamado? GUILHERME
seja bem vindo, GUILHERME!
Digite a senha: 55058
SENHA INCORRETA!
Digite a senha novamente: 70908
Senha correta! Acesso liberado.

O valor limite de saque é: R$10000 Digite o valor de saque novamente,GUILHERME: 10001
VALOR INDISPONÍVEL! O valor limite de saque é: R$10000 Digite o valor de saque novamente,GUILHERME: 2000
Seu valor foi aceito com sucesso! Preparando saque...
Seu novo limite é de: 8000

Gostei muito desse projeto. Queria feedbacks

1 resposta

Olá, Guilherme, como vai?

Gostei da forma como você estruturou o projeto. Você não ficou apenas na entrada de dados, mas também trabalhou com comparação, while, variáveis de controle e atualização de valores. A lógica de armazenar o resultado da comparação em senha_correta e depois utilizá-la na condição do while é uma boa forma de visualizar o funcionamento do laço. O mesmo raciocínio foi aplicado ao controle do saque, usando saldo_disponivel para determinar quando o valor informado é válido.

Um próximo passo interessante seria pensar em situações que ainda não estão sendo tratadas. Por exemplo, o que aconteceria se a pessoa digitasse um valor negativo para o saque, 0 ou até mesmo um texto em vez de um número? Também dá para evoluir o projeto fazendo o saque realmente alterar o saldo da conta, em vez de apenas calcular o novo limite. Isso deixaria o exercício ainda mais próximo do comportamento de um caixa eletrônico.

Se você fosse continuar evoluindo esse projeto, qual funcionalidade você adicionaria primeiro e como pensaria a lógica para implementá-la?

Continue compartilhando sua evolução por aqui. O fórum está à disposição para acompanhar os próximos passos.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!