fork download
  1. def troco(valor, notas_em_x):
  2. notas = valor // notas_em_x
  3. valor %= notas_em_x
  4. return valor, notas
  5.  
  6.  
  7. valor = 348 # depois vc troca por int(input()), coloquei um valor fixo só como exemplo
  8.  
  9. notas = [100, 50, 25, 10, 5, 2, 1]
  10. for nota in notas:
  11. valor, qtd = troco(valor, nota)
  12. print(f'{qtd} notas de R$ {nota:.2f}')
  13.  
  14. print('\n----------------\n')
  15.  
  16. # ou, se quiser sempre formatar os valores no padrão brasileiro (com vírgula como separador decimal, etc)
  17. # só lembrando que o sistema deve ter o locale pt_BR instalado
  18.  
  19. # **** Eu comentei o código abaixo porque no IdeOne não tem o locale pt_BR instalado e dá erro ***
  20. # Mas se tiver, ele imprime os valores como R$ 2,00 (com vírgula)
  21.  
  22. #import locale
  23. #locale.setlocale(locale.LC_ALL, 'pt_BR')
  24. #valor = 348
  25. #notas = [100, 50, 25, 10, 5, 2, 1]
  26. #for nota in notas:
  27. # valor, qtd = troco(valor, nota)
  28. # locale.currency já coloca o R$
  29. # print(f'{qtd} notas de {locale.currency(nota)}')
Success #stdin #stdout 0.03s 9668KB
stdin
Standard input is empty
stdout
3 notas de R$ 100.00
0 notas de R$ 50.00
1 notas de R$ 25.00
2 notas de R$ 10.00
0 notas de R$ 5.00
1 notas de R$ 2.00
1 notas de R$ 1.00

----------------