TOPIC

resolvi o problema 1021 em python mas da erro 5%

Renato Martins de Almeida asked 1 month ago

Eu não etsou entendendo tentei de tudo o formato de imprimir mas nada vai, e o codigo esta certinho ja testei

nota = float(input()) valoresMoedasString = ["1.00","0.50","0.25","0.10","0.05","0.01"] valoresNotasString = ["100.00","50.00","20.00","10.00","5.00","2.00"] def calcule(nota,valores,SoPorCausaDeumTextinho): for x in range(len(valores)): qtd = nota/float(valores[x]) print("%d %s de R$ %s" %(qtd,SoPorCausaDeumTextinho,str(valores[x]))) global t t = nota = nota - (float(valores[x])*int(qtd)) print("NOTAS:") calcule(nota,valoresNotasString,"nota(s)") print("MOEDAS:") calcule(t,valoresMoedasString,"moedas(s)")

This topic was solved and cannot recieve new replies.

  • Renato Martins de Almeida replied 1 month ago

    Tentei fazer assim mais não foi tambem ja fiz de varias formas KKK ta osso

    nota = float(input())
    valores = [100,50,20,10,5,2,1,0.50,0.25,0.10,0.05,0.01]
    valoresString = ["100.00","50.00","20.00","10.00","5.00","2.00","1.00","0.50","0.25","0.10","0.05","0.01"]
    for x in range(len(valores)):
        qtd = nota/valores[x]+0.00001
        if x<=5:
            if x==0:
                print("NOTAS:")
            print("{} nota(s) de R$ {}".format(int(qtd),valoresString[x]))
        else:
            if x==6:
                print("MOEDAS:")
            print("{} moedas(s) de R$ {}".format(int(qtd),valoresString[x]))
        nota = nota - (valores[x]*int(qtd))
    
  • Renato Martins de Almeida replied 1 month ago

    fiz assim mais ta dando Runtime Error kkk vamo ver

    nota = float(input()) + 0.00001
    valoresMoedasString = ["1.00","0.50","0.25","0.10","0.05","0.01"]
    valoresNotasString = ["100.00","50.00","20.00","10.00","5.00","2.00"]
    def calcule(nota,valores,SoPorCausaDeumTextinho):
        for x in range(len(valores)):
            qtd = nota/float(valores[x] + 0.00001)
            print("%d %s de R$ %s" %(qtd,SoPorCausaDeumTextinho,str(valores[x])))
            global t
            t = nota = nota - (float(valores[x])*int(qtd))
    print("NOTAS:")
    calcule(nota,valoresNotasString,"nota(s)")
    print("MOEDAS:")
    calcule(t,valoresMoedasString,"moedas(s)")
  • Vinicius Freitas replied 1 month ago

    Oi, tava com o mesmo erro. Quando realizar as divisões de moedas, coloca +0.00001. Ex: mc = int((valor)/0.50 + 0.00001)