""" Dada una cantidad c, esta es repartida entre las denominaciones pasada como parametros y sujeta a las restricciones indicadas """ def BilletesMonedas(den, res, c): if len(den) != len(res): print("Error los arreglos no son del mismo tamano") exit(1) xc = c u = [0] * len(den) # Ciclo sobre cada una de las denominaciones for i in range(len(den)): # ciclo sobre cada una de las cantidades que satisfacen la denominacion y la restriccion while xc >= den[i] and u[i] < res[i]: xc -= den[i] u[i] += 1 # visualizacion print("cantidad:" + str(c)) for i in range(len(den)): print( "en: " + str(den[i]) + " con la restriccion de: " + str(res[i]) + " se usaron: " + str(u[i]) ) print("sobra: " + str(xc)) # prueba r = 0 for i in range(len(den)): r += den[i] * u[i] r += xc print("Prueba: " + str(r)) """ Prueba """ if __name__ == "__main__": d = [1000, 500, 100] r = [6, 4, 100] BilletesMonedas(d, r, 7401)