Macro para hallar la cantidad de monedas

Buenas,
Deseo saber como realizar un subprograma que permita realizar el cálculo de monedas necesarias ingresando un monto por . Las monedas disponibles son 1,5,10. Ejemplo, si tengo 34 soles me devolvería 3 x 10 y 4 x 1. El subprograma tiene como parámetros el monto y la denominación.
Conozco como hacerlo con selectivas pero el problema me pide resolverla sin usarlas, por eso no se como plantearlo.
Muchas gracias por la ayuda,
Respuesta
1
Lo que necesitas hacer es 'agotar' el numero, me explico: primero divides el numero entre la 'moneda' de mayor denominación y tomas el entero de ese resultado, y luego restas de la cantidad inicial ese numero multiplicado por la denominación, para 34 seria: 34/10=3.4 al tomar el entero nos quedamos con un tres, que al multiplicarlo por la denominación y restarselo a la cantidad tenemos 34 - (3*10)=4, como cuatro no tiene como divisor a 5 pues seguimos calculando y se encuentra que la cantidad la completamos con cuatro monedas de un peso (Saludos desde Colombia ;)). Te adjunto un código que muestra 'en físico' lo que pretendí explicar arriba. Me avisas si anda. Saludos
<span style="white-space: pre;"> </span>******************
Sub CuadrarDinero()
''Creada por FSerrano en 110518
'solicita la cantidad a procesar
cantidad = InputBox("Ingrese la cantidad", "VALOR")
'Agota la cantidad ingresada en factores de 10, 5 y 1
diez = Int(cantidad / 10)
cinco = Int((cantidad - diez * 10) / 5)
uno = Int((cantidad - diez * 10 - cinco * 5) / 1)
'Muestra un mensaje con los valores obtenidos
MsgBox ("La cantidad de monedas es:" & Chr(10) & Chr(10) & Chr(9) & diez & Chr(9) & " moneda(s) de diez" _
& Chr(10) & Chr(9) & cinco & Chr(9) & " moneda(s) de cinco" & Chr(10) & Chr(9) & uno & Chr(9) & " moneda(s) de un" _
& Chr(10) & Chr(10) & "Para " & Chr(9) & cantidad & Chr(9) & "EN TOTAL")
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas