Taller ViajeSeguro
Taller 6: "ViajeSeguro" en Google Colab
Objetivo: Simular el costo de un viaje según destino, días, transporte y alojamiento usando estructuras condicionales, funciones y visualización de datos.
Paso 1: Estructura de precios base
tarifas_transporte = {
"bus": 50000,
"avion": 200000
}
tarifas_alojamiento = {
"hostal": 70000,
"hotel": 150000
}
Paso 2: Función para calcular costo del viaje
def calcular_costo(destino, dias, transporte, alojamiento):
if transporte not in tarifas_transporte or alojamiento not in tarifas_alojamiento:
print("❌ Transporte o alojamiento no válidos.")
return
costo_transporte = tarifas_transporte[transporte]
costo_alojamiento = tarifas_alojamiento[alojamiento] * dias
total = costo_transporte + costo_alojamiento
print(f"🧳 Destino: {destino}")
print(f"🚌 Transporte: {transporte} (${costo_transporte})")
print(f"🏨 Alojamiento ({dias} días): {alojamiento} (${costo_alojamiento})")
print(f"💵 Costo total estimado: ${total}")
Paso 3: Probar con diferentes parámetros
# Ejemplo 1
calcular_costo("Medellín", 3, "bus", "hostal")
# Ejemplo 2
calcular_costo("Cartagena", 5, "avion", "hotel")
Paso 4: Simulación de múltiples viajes
viajes = []
def registrar_viaje(destino, dias, transporte, alojamiento):
if transporte in tarifas_transporte and alojamiento in tarifas_alojamiento:
total = tarifas_transporte[transporte] + tarifas_alojamiento[alojamiento] * dias
viajes.append({
"destino": destino,
"dias": dias,
"transporte": transporte,
"alojamiento": alojamiento,
"costo": total
})
# Registrar algunos viajes
registrar_viaje("Cali", 2, "bus", "hotel")
registrar_viaje("Bogotá", 4, "avion", "hostal")
Paso 5: Visualizar costos con Matplotlib
import matplotlib.pyplot as plt
def graficar_viajes(viajes):
destinos = [v["destino"] for v in viajes]
costos = [v["costo"] for v in viajes]
plt.bar(destinos, costos)
plt.title("Comparación de costos de viajes")
plt.ylabel("Costo Total")
plt.xlabel("Destino")
plt.xticks(rotation=45)
plt.tight_layout()
plt.show()
# Mostrar gráfico
graficar_viajes(viajes)
Paso 6: Guardar viajes registrados
import json
def guardar_viajes(nombre_archivo, datos):
with open(nombre_archivo, 'w') as archivo:
json.dump(datos, archivo)
# Guardar
guardar_viajes("viajes.json", viajes)
Actividad final del estudiante
- Crear al menos 3 simulaciones de viaje con parámetros variados.
- Calcular los costos correctamente usando funciones y condicionales.
- Visualizar la comparación de costos en un gráfico de barras.
- Guardar el archivo con los viajes registrados.
- Reflexión: ¿Cómo ampliarías este simulador para una agencia de viajes real?
Comentarios
Publicar un comentario