Desglosar cantidad en monedas

Hola pues estoy haciendo que dada una cantidad por ejemplo 8.45 te diga la cantidad de monedas que existen de euro se desglosa. Lo quiero para poder saber cuantas monedas de cada necesito para dar una vuelta de una compra.
Esto mismo lo he hecho con billetes (cantidades sin decimales) y no he tenido ningún problema. La cosa viene ahora ya que al hacer (a mod b) esta cantidad me la redondea .
mon2 = cantidad \ 2 'cantidad monedas 2¬
x = (cantidad Mod 2)
mon1 = (x \ 1) ' cantidad monedas 1¬
y = (x Mod 1)
mon05 = (y \ 5) \ 10
z = (y Mod 5)
¿Cómo podría resolver este problema?

1 Respuesta

Respuesta
1
Private Sub Command1_Click()
Dim mon2, mon1, mon05 As Integer
Dim x, y, z As Double
x = 0
y = 0
z = 0
mon2 = 0
mon1 = 0
mon05 = 0
mon2 = Txtcantidad \ 2 'cantidad monedas 2¬
x = CDbl(Txtcantidad) - CDbl(mon2 * 2)
If x >= 1 Then
mon2 = (x \ 1) ' cantidad monedas 1¬
y = (x - mon2 * 1)
MsgBox (mon1 & " " & y)
Else
mon05 = CDec(CDbl(x) / CDbl((1 / 2)))
z = (x - (CInt(mon05) * 5 * 10))
MsgBox ("de $2 =" & mon2 & " de $1= " & mon1 & " de $0,50= " & mon05)
End If
End Sub
'Cuando pongo 6,5 me dice 3 de $3 y 2 de 0,50 porque como me sobran 0,75
'Igual no logre que la division del mon05 no quede redondeada, lo correcto seria 1,5 y me lo redondea a dos
'Pero es una tecnica distinta al mod, fijate si te sirve

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas