Código de Python - Desglosar un importe en billetes y monedas

Imágen de perfil
Val: 2.397
Oro
Ha disminuido 1 puesto en Python (en relación al último mes)
Gráfica de Python

Desglosar un importe en billetes y monedasgráfica de visualizaciones


Python

Actualizado el 31 de Octubre del 2019 por Xve (293 códigos) (Publicado el 6 de Julio del 2019)
5.249 visualizaciones desde el 6 de Julio del 2019
Este código muestra como desglosar un importe/cambio en billetes y monedas permitiendo utilizar decimales.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Cantidad a devolver: 1253.98
Hay 1 billetes de 500
Hay 2 billetes de 200
Hay 2 billetes de 100
Hay 2 billetes de 50
Hay 2 billetes de 20
Hay 1 billetes de 10
Hay 1 monedas de 2
Hay 1 monedas de 1
Hay 1 monedas de 0.5
Hay 2 monedas de 0.2
Hay 1 monedas de 0.05
Hay 1 monedas de 0.02
Hay 1 monedas de 0.01
Faltan 0.00 monedas por repartir

Versión 1.0

Actualizado el 31 de Octubre del 2019 (Publicado el 6 de Julio del 2019)gráfica de visualizaciones de la versión: Versión 1.0
1.025 visualizaciones desde el 6 de Julio del 2019

Versión 2 - Con limite de monedas
estrellaestrellaestrellaestrellaestrella(2)

Publicado el 31 de Octubre del 2019gráfica de visualizaciones de la versión: Versión 2 - Con limite de monedas
4.225 visualizaciones desde el 31 de Octubre del 2019
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

En esta segunda versión se puede especificar la cantidad de monedas que se tiene de cada tipo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/usr/bin/env python3
import math
 
# Definimos los tipos de monedas
monedas=[500, 200, 100, 50, 20, 10, 5, 2, 1, 0.5, 0.20, 0.10, 0.05, 0.02, 0.01]
 
# Definimos la cantidad de monedas que disponemos de cada tipo
cantidad=[1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 200]
 
# Definimos una lista vacia que contendra las cantidades de cada moneda
cambio=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
 
importe=1253.98
 
print("Cantidad a devolver: {:.2f}".format(importe))
 
for i in range(len(monedas)):
    if importe>monedas[i]:
        cantidadMoneda=math.floor(importe/monedas[i])
        if cantidadMoneda<=cantidad[i]:
            cambio[i]=cantidadMoneda
        else:
            cambio[i]=cantidad[i]
        importe-=(cambio[i]*monedas[i])
 
for i in range(len(monedas)):
    if cambio[i]>0 and monedas[i]>=5:
        print("Hay {} billetes de {}".format(cambio[i], monedas[i]))
    elif cambio[i]>0:
        print("Hay {} monedas de {}".format(cambio[i], monedas[i]))
 
print("Faltan {:.2f} monedas por repartir".format(importe))



Comentarios sobre la versión: Versión 2 - Con limite de monedas (2)

31 de Octubre del 2019
estrellaestrellaestrellaestrellaestrella
hola! una pregunta, que significa el "{:.2f}" ?
Responder
Imágen de perfil
31 de Octubre del 2019
estrellaestrellaestrellaestrellaestrella
https://pyformat.info/#number
Responder

Comentar la versión: Versión 2 - Con limite de monedas

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad

http://lwp-l.com/s5403