If/Else en un Bucle Anidado
Las sentencias if/else son fundamentales para añadir condiciones a los bucles anidados. Permiten filtrar, procesar o categorizar datos, como identificar valores específicos en listas o matrices.
Apliquemos este concepto a una tarea práctica: filtrar gastos de viaje. Si un gasto supera un cierto umbral presupuestario, lo marcaremos como "Expensive"; de lo contrario, se imprime el gasto original.
Supón que tienes una lista de viajes, y cada viaje contiene gastos para categorías como vuelos, hoteles, comida y actividades. El objetivo es revisar cada gasto:
- Si el gasto supera los $200, marcarlo como
Expensive; - De lo contrario, imprimir el gasto original.
1234567891011121314151617181920212223# Travel expenses for multiple trips travel_costs = [ [500, 150, 100, 50], # Trip 1 [200, 300, 120, 80], # Trip 2 [180, 220, 130, 170] # Trip 3 ] # Setting outer while loop to work with rows (trips) i = 0 while i < len(travel_costs): j = 0 print(f"Trip {i + 1} expenses: ", end='') # Label for the current trip # Setting inner while loop to work with expenses in the current trip while j < len(travel_costs[i]): if travel_costs[i][j] > 200: # Check if expense is greater than 200 print('Expensive', end=' ') else: print(travel_costs[i][j], end=' ') j += 1 # Move to the next expense print('') # Move to the next line after each trip i += 1 # Move to the next trip
- El bucle while externo itera por cada viaje en la lista
travel_costsusando el índicei; - El bucle while interno recorre los gastos del viaje actual usando el índice
j; - La condición
if/elseverifica si un gasto es mayor que $200; - Tras procesar todos los gastos de un viaje, el programa pasa a la siguiente línea y continúa con el siguiente viaje.
Swipe to start coding
Se proporciona una lista de gastos de viaje para varios viajes. Cada viaje está representado como una lista anidada que contiene diversos gastos como transporte, alojamiento, comida y actividades. La tarea consiste en procesar estos gastos identificando los costos "baratos" mientras se mantiene la misma estructura anidada.
- Se proporciona una lista bidimensional (lista de listas), donde cada lista interna representa los gastos de un solo viaje.
- Recorrer cada lista de gastos de viaje.
- Reemplazar cualquier gasto de $100 o menos por
"Cheap", manteniendo los demás valores sin cambios. - Almacenar los gastos transformados en una nueva lista bidimensional con la misma estructura.
Solución
¡Gracias por tus comentarios!
single
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Genial!
Completion tasa mejorada a 5
If/Else en un Bucle Anidado
Desliza para mostrar el menú
Las sentencias if/else son fundamentales para añadir condiciones a los bucles anidados. Permiten filtrar, procesar o categorizar datos, como identificar valores específicos en listas o matrices.
Apliquemos este concepto a una tarea práctica: filtrar gastos de viaje. Si un gasto supera un cierto umbral presupuestario, lo marcaremos como "Expensive"; de lo contrario, se imprime el gasto original.
Supón que tienes una lista de viajes, y cada viaje contiene gastos para categorías como vuelos, hoteles, comida y actividades. El objetivo es revisar cada gasto:
- Si el gasto supera los $200, marcarlo como
Expensive; - De lo contrario, imprimir el gasto original.
1234567891011121314151617181920212223# Travel expenses for multiple trips travel_costs = [ [500, 150, 100, 50], # Trip 1 [200, 300, 120, 80], # Trip 2 [180, 220, 130, 170] # Trip 3 ] # Setting outer while loop to work with rows (trips) i = 0 while i < len(travel_costs): j = 0 print(f"Trip {i + 1} expenses: ", end='') # Label for the current trip # Setting inner while loop to work with expenses in the current trip while j < len(travel_costs[i]): if travel_costs[i][j] > 200: # Check if expense is greater than 200 print('Expensive', end=' ') else: print(travel_costs[i][j], end=' ') j += 1 # Move to the next expense print('') # Move to the next line after each trip i += 1 # Move to the next trip
- El bucle while externo itera por cada viaje en la lista
travel_costsusando el índicei; - El bucle while interno recorre los gastos del viaje actual usando el índice
j; - La condición
if/elseverifica si un gasto es mayor que $200; - Tras procesar todos los gastos de un viaje, el programa pasa a la siguiente línea y continúa con el siguiente viaje.
Swipe to start coding
Se proporciona una lista de gastos de viaje para varios viajes. Cada viaje está representado como una lista anidada que contiene diversos gastos como transporte, alojamiento, comida y actividades. La tarea consiste en procesar estos gastos identificando los costos "baratos" mientras se mantiene la misma estructura anidada.
- Se proporciona una lista bidimensional (lista de listas), donde cada lista interna representa los gastos de un solo viaje.
- Recorrer cada lista de gastos de viaje.
- Reemplazar cualquier gasto de $100 o menos por
"Cheap", manteniendo los demás valores sin cambios. - Almacenar los gastos transformados en una nueva lista bidimensional con la misma estructura.
Solución
¡Gracias por tus comentarios!
single