Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Desafio: ¡Es hora de practicar!

Hola, compañeros y profesores, tengo una duda con mi código.

Quiero saber si es lo suficientemente claro como para que otro desarrollador lo pueda entender, y también quiero saber si por UX es buena práctica mostrar por consola tanta información.

txt = input("Bienvenido que desea cargar (Etanol o Diésel): ").lower().strip()

while txt != "etanol" and txt != "diesel":
  print("Valor Inválido!")
  txt = input("Ingresa una opción válida: ").lower().strip()

if txt == "etanol":
  txt = "E"
else:
  txt = "D"

precio_E = 1.70 # Precio de Etanol
precio_D = 2.00 # Precio de Diésel

litros = int(input("Cuantos litros desea cargar: "))

if txt == "E":  # Si es Etanol
    if litros <= 15:
        descuento = precio_E - (precio_E * 0.02)   # 2% de descuento por litro
        print("Tienes un descuento del 2% en cada litro.")
        print("Valor a pagar: $",litros * descuento) # precio litro y cant litros
        print(f"Descuento de: $ {((litros * precio_E) - litros * descuento):.2f}")

    else:
        descuento = precio_E - (precio_E * 0.04) # 4% de descuento por litro
        print("Tienes un descuento del 4% en cada litro.")
        print("Valor a pagar: $",litros * descuento)
        print(f"Descuento de: $ {((litros * precio_E) - litros * descuento):.2f}")

elif txt == "D":  # Si es Diésel
    if litros <= 15:
        descuento = precio_D - (precio_D * 0.03) # 3% de descuento por litro
        print("Tienes un descuento del 3% en cada litro.")
        print("Valor a pagar: $",litros * descuento)
        print(f"Descuento de: $ {((litros * precio_D) - litros * descuento):.2f}")

    else:
        descuento = precio_D - (precio_D * 0.05)  # 5% de descuento por litro
        print("Tienes un descuento del 5% en cada litro.")
        print("Valor a pagar: $",litros * descuento)
        print(f"Descuento de: $ {((litros * precio_D) - litros * descuento):.2f}")
1 respuesta

Hola Duberney,

¡Gracias por compartir tu código! Vamos a revisarlo juntos.

Primero, en cuanto a la claridad del código, parece bastante legible. Has utilizado nombres de variables descriptivos y el flujo lógico es fácil de seguir. Sin embargo, podrías mejorar la claridad aún más con algunos comentarios adicionales para explicar partes clave del código, especialmente si planeas compartirlo con otros desarrolladores que no estén familiarizados con el contexto del problema.

Por ejemplo, podrías añadir comentarios como estos:

# Solicitar al usuario que ingrese el tipo de combustible
txt = input("Bienvenido que desea cargar (Etanol o Diésel): ").lower().strip()

# Validar la entrada del usuario
while txt != "etanol" and txt != "diesel":
  print("Valor Inválido!")
  txt = input("Ingresa una opción válida: ").lower().strip()

# Asignar un código para el tipo de combustible
if txt == "etanol":
  txt = "E"
else:
  txt = "D"

# Precios por litro
precio_E = 1.70 # Precio de Etanol
precio_D = 2.00 # Precio de Diésel

# Solicitar al usuario la cantidad de litros
litros = int(input("Cuantos litros desea cargar: "))

# Calcular el descuento y el valor a pagar
if txt == "E":  # Si es Etanol
    if litros <= 15:
        descuento = precio_E - (precio_E * 0.02)   # 2% de descuento por litro
        print("Tienes un descuento del 2% en cada litro.")
        print("Valor a pagar: $",litros * descuento) # precio litro y cant litros
        print(f"Descuento de: $ {((litros * precio_E) - litros * descuento):.2f}")

    else:
        descuento = precio_E - (precio_E * 0.04) # 4% de descuento por litro
        print("Tienes un descuento del 4% en cada litro.")
        print("Valor a pagar: $",litros * descuento)
        print(f"Descuento de: $ {((litros * precio_E) - litros * descuento):.2f}")

elif txt == "D":  # Si es Diésel
    if litros <= 15:
        descuento = precio_D - (precio_D * 0.03) # 3% de descuento por litro
        print("Tienes un descuento del 3% en cada litro.")
        print("Valor a pagar: $",litros * descuento)
        print(f"Descuento de: $ {((litros * precio_D) - litros * descuento):.2f}")

    else:
        descuento = precio_D - (precio_D * 0.05)  # 5% de descuento por litro
        print("Tienes un descuento del 5% en cada litro.")
        print("Valor a pagar: $",litros * descuento)
        print(f"Descuento de: $ {((litros * precio_D) - litros * descuento):.2f}")

En cuanto a la cantidad de información mostrada en la consola, es importante encontrar un equilibrio. Mostrar demasiada información puede abrumar al usuario. En este caso, estás proporcionando información relevante sobre el descuento y el valor total a pagar, lo cual es útil. Sin embargo, podrías considerar si todos los mensajes son necesarios o si algunos podrían ser simplificados o combinados para hacer la experiencia del usuario más fluida.

Espero que estas sugerencias te sean útiles. ¡Bons estudos!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios!