Ejercicio

Escribir un programa que realice la devolución de una cantidad dada por el usuario en monedas.

El programa debe cumplir los siguientes requisitos:

  • Solo se disponen de tres tipos de monedas: 5, 2 y 1 €. Crear una lista que contenga estos tres tipos de moneda y usar la lista en la solución.
  • El programa debe preguntar al usuario por una cantidad entera de euros.
  • El programa debe mostrar por pantalla el mínimo número de monedas necesarias para sumar la cantidad introducida por el usuario y cuántas monedas de cada tipo se necesitan para ello. El número de monedas de cada tipo debe guardarse en otra lista.

Solución


In [2]:
coins = [5, 2, 1]
change = [0, 0, 0]
amount = int(input("Introduce una cantidad entera de euros: "))
print('Para sumar', amount, '€ se necesitan ', end='')
for i in range(len(coins)):
    while amount >= coins[i]:
        amount -= coins[i]
        change[i] += 1
print(sum(change), 'monedas:')
for i in range(len(coins)):
    print(change[i], 'monedas de ', coins[i], '€')


Para sumar 48 € se necesitan 11 monedas:
9 monedas de  5 €
1 monedas de  2 €
1 monedas de  1 €