Ejercicio: 3Eva_IT2009_T2 Seleccionar billetes de cajero automático
El algoritmo requiere la cantidad como un número entero.
cantidad=77
Se obtiene el número de billetes por denominación como cociente de cantidad y la de nominación en forma descendente [50,20,10,5,1]
billetes50 = cantidad//50
Por cada operación anterior se debe obtener el saldo, restando el valor de los billetes por denominación por la cantidad o saldo anterior
saldo = cantidad-50*(billete50)
Algoritmo en Python
# ICM00794-Fundamentos de Computación - FCNM-ESPOL # 3Eva_IT2009_T2 Seleccionar billetes de cajero automático # Propuesta en forma de programa. edelros@espol.edu.ec. # INGRESO cantidad = int(input('Cantidad solicitada: ')) # PROCEDIMIENTO # cociente O división entera // billete50 = cantidad//50 saldo = cantidad-50*(billete50) billete20 = saldo//20 saldo = saldo-20*(billete20) billete10 = saldo//10 saldo = saldo-10*(billete10) billete05 = saldo//5 billete01 = saldo-5*(billete05) # Salida print ('de 50:',billete50) print ('de 20:',billete20) print ('de 10:',billete10) print ('de 05:',billete05) print ('de 01:',billete01)
Nota: Si ha completado la unidad 4, realice el ejercicio usando un vector denominación de billetes = [50,20,10,5,1] par obtener el resultado.
Algoritmo como función, si ya ha completado la unidad 5.
# ICM00794-Fundamentos de Computación - FCNM-ESPOL # 3Eva_IT2009_T2 Seleccionar billetes de cajero automático # Propuesta función. edelros@espol.edu.ec. import numpy as np def billete(cantidad): # division entera o cociente // billete50 = cantidad//50 saldo = cantidad - 50*(billete50) billete20 = saldo//20 saldo = saldo - 20*(billete20) billete10 = saldo//10 saldo = saldo - 10*(billete10) billete05 = saldo//5 billete01 = saldo - 5*(billete05) # define variable de salida entrega = np.array([0, 0, 0, 0, 0], int) entrega[0] = billete50 entrega[1] = billete20 entrega[2] = billete10 entrega[3] = billete05 entrega[4] = billete01 return (entrega)
Propuesta de solución en Python: y también incluye versión en matlab