Este tutorial te guiará para crear un programa de agencia de viajes en Python donde existen diferentes categorías de pasajeros y destinos, y los precios varían según la categoría seleccionada. A continuación, te mostraré paso a paso cómo construir este programa.
<# Definir categorías y porcentajes de incremento
categorias = ('A', 'B', 'C', 'D')
categoria_porcentaje = (5, 15, 25, 35)
# Definir destinos y sus precios
destinos = {
'1': {'Bogota-Medellin': 100000},
'2': {'Medellin-Bogota': 110000},
'3': {'Bogota-Bucaramanga': 120000},
'4': {'Bucaramanga-Bogota': 110000},
'5': {'Bogota-Cali': 100000},
'6': {'Cali-Bogota': 120000},
'7': {'Bogota-Cartago': 110000},
'8': {'Cartago-Bogota': 115000},
}
>
Paso 2: Interactuar con el Usuario
Vamos a crear una interfaz de texto simple para que el usuario seleccione su categoría y destino.
<# Mensaje de bienvenida
print('Bienvenido a tu agencia de viajes')
# Seleccionar categoría
print('Seleccione su categoría:')
for i, catin enumerate(categorias):
print(f"{cat}: pagan un {categoria_porcentaje[i]}% más")
categoria_usuario = input('Escriba la letra desu categoría: ').upper()
# Verificar categoría
if categoria_usuario not in categorias:
print('Categoría no válida.')
exit()
# Seleccionar destino
print('Seleccione su destino:')
for key, value in destinos.items():
for ruta, precio in value.items():
print(f"{key}: {ruta} = ${precio}")
destino_usuario = input('Escriba el número desu destino: ')
# Verificar destino
if destino_usuario not in destinos:
print('Destino no válido.')
exit()
>
Paso 3: Calcular el Precio Final
Calcula el precio final según la categoría y el destino seleccionados por el usuario.
<# Obtener el porcentaje de incremento según la categoríaindice_categoria = categorias.index(categoria_usuario)
porcentaje_incremento = categoria_porcentaje[indice_categoria]
# Obtener el precio del destino seleccionadodestino_seleccionado = destinos[destino_usuario]
precio_base = next(iter(destino_seleccionado.values()))
# Calcular el precio finalincremento = (precio_base * porcentaje_incremento) / 100precio_final = precio_base + incremento
# Mostrar el precio final
print(f"El precio final para el destino seleccionado es: ${precio_final}")
>