If/Else in un Ciclo Annidato
Le istruzioni if/else
sono essenziali per aggiungere condizioni ai cicli annidati. Consentono di filtrare, elaborare o categorizzare i dati, come identificare valori specifici in elenchi o matrici.
Adattiamo questo concetto a un compito pratico: filtrare le spese di viaggio. Se una spesa supera una certa soglia di budget, la segneremo come "Expensive"
; altrimenti, stamperemo la spesa originale.
Supponiamo di avere un elenco di viaggi e ogni viaggio contenga spese per categorie come voli, hotel, cibo e attività. Il tuo obiettivo è controllare ogni spesa:
Se la spesa supera $200, segnarla come
Expensive
;Altrimenti, stampare la spesa originale.
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
Il ciclo while esterno itera attraverso ogni viaggio nella lista
travel_costs
usando l'indicei
;Il ciclo while interno attraversa le spese per il viaggio corrente usando l'indice
j
;La condizione
if/else
verifica se una spesa è maggiore di $200;Dopo aver elaborato tutte le spese per un viaggio, il programma passa alla riga successiva e procede al viaggio successivo.
Swipe to start coding
Ti viene fornito un elenco di spese di viaggio per più viaggi. Ogni viaggio è rappresentato come una lista annidata contenente varie spese come trasporto, alloggio, cibo e attività. Il tuo compito è elaborare queste spese identificando i "costi economici" mantenendo la stessa struttura annidata.
- Ti viene fornito un elenco bidimensionale (elenco di elenchi), dove ogni elenco interno rappresenta le spese di un singolo viaggio.
- Itera attraverso l'elenco delle spese di ogni viaggio.
- Sostituisci qualsiasi spesa di $100 o meno con
"Cheap"
, mantenendo inalterati gli altri valori. - Memorizza le spese trasformate in un nuovo elenco bidimensionale con la stessa struttura
Soluzione
Grazie per i tuoi commenti!
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione