Introducción a la Programación El problema del cambio de monedas Andrés Becerra Sandoval 25 de febrero de 2008 Introducción Una máquina tragamonedas permite comprar productos, y tiene dispositivos capaces de reconocer las monedas que los clientes ingresan por su ranura y sumarlas sus valores. Para entregar las devueltas a un cliente que está haciendo una compra cuenta con muchas monedas de $50,$10,$2,y $1. Se requiere realizar un programa de computador que calcule el número de monedas a devolver, por ejemplo: Si un cliente compra unas papas fritas de $800, y paga $1000, habría que devolverle 4 monedas de $50. Si un cliente compra una gaseosa de $950, y paga $1000, habría que devolverle 1 moneda de $50. Si un cliente compra una chocolatina de $735, y paga $1000, habría que devolver $265 distribuidos en: 5 monedas de $50, 1 moneda de $10, 2 monedas de $2, y 1 moneda de $1. Se requiere desarrollar un programa de computador para calcular las devueltas automáticamente. Desarrollo Cree la función calcular_devuelta(precio, pago) en python que resuelva el problema de calcular la devuelta. Los parámetros son: precio: el valor en pesos de un producto que un cliente está comprando pago: el valor total en monedas que el cliente ha ingresado por la ranura de la máquina para pagar por su producto La función debe imprimir (mediante la sentencia print) el número de monedas de cada denominación que se deben retornar al cliente. 1 Ayuda Para resolver este problema es de gran ayuda tener claro el funcionamiento de la operación aritmética que permite calcular el residuo de la división de dos números enteros. Por ejemplo: el residuo de dividir 7 entre 2 es 1 el residuo de dividir 6 entre 4 es 2 el residuo de dividir 6 entre 3 es 0 En el lenguaje de programación python se puede calcular el residuo de dividir a entre b mediante la expresión a %b, por ejemplo: 7% 2 6% 4 6% 3 En el libro guía del curso, disponible en cic.puj.edu.co/wiki se introduce el operador residuo en el capítulo 5 (sección 5.1). 2