1
resposta

Contador de cédulas únicas

import msvcrt
import os

def limpar_tela():
    os.system("cls")

def pausa_limpa(texto):
    print()
    print(texto)
    print("Aperte uma tecla para continuar", end="", flush=True)
    msvcrt.getch()
    limpar_tela()

def valor_saque():
    while True:
        try:
            saque = int(input("Digite o valor do saque(apenas números pares e inteiros): "))
            if saque <= 0 or saque % 2 != 0:
                raise ValueError
            return saque
        except ValueError:
            pausa_limpa("Valor inválido.")
            continue
    
def notas(valor, cedula):
    quantidade = valor // cedula
    resto = valor % cedula
    return quantidade, resto

def calculo(saque):

    n100, saque = notas(saque, 100)
    n50,  saque = notas(saque, 50)
    n20,  saque = notas(saque, 20)
    n10,  saque = notas(saque, 10)
    n5,   saque = notas(saque, 5)
    n2,   saque = notas(saque, 2)

    print(f"""Cédulas entregues:
{n100} de R$100
{n50}  de R$50
{n20}  de R$20
{n10}  de R$10
{n5}   de R$5
{n2}   de R$2
""")
    
    pausa_limpa("Saque finalizado")

def main():
    limpar_tela()
    saque = valor_saque()
    calculo(saque)


if __name__ == "__main__":
    main()

    
1 resposta

Oi, Rafaela! Como vai?

Agradeço por compartilhar.

Gostei de como você separou bem as responsabilidades com funções como limpar_tela(), valor_saque() e calculo(), deixando o fluxo do main() bem claro. Também achei bacana o uso de try/except para validar o valor e a função notas(valor, cedula) pra reaproveitar a lógica de divisão e resto, o que torna o código mais organizado.

Uma dica interessante para o futuro e usar uma lista de cedulas e um for para evitar repetição e facilitar manutenção.


cedulas = [100, 50, 20, 10, 5, 2]
resto = saque
for cedula in cedulas:
    qtd = resto // cedula
    resto = resto % cedula
    print(f"{qtd} de R${cedula}")

Esse código percorre as cedulas, calcula a quantidade de cada uma com //, atualiza o restante com % e imprime o resultado de forma automatica, mantendo a mesma ideia do seu notas().

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