Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Cicli For Annidati | Cicli
Python Ninja

bookCicli For Annidati

Scorri per mostrare il menu

Finora, hai utilizzato i cicli per ripetere piccoli schemi di azioni — non solo singoli comandi, ma brevi sequenze di movimenti e azioni.

Tuttavia, a volte, quello schema deve essere ripetuto nuovamente. In questi casi, i cicli annidati diventano utili.

Un ciclo annidato è semplicemente un ciclo all'interno di un altro ciclo:

  • Il ciclo interno descrive uno schema ripetitivo;
  • Il ciclo esterno controlla quante volte viene eseguito l'intero schema.

Puoi pensarlo così: "Ripeti questa sequenza… e fallo più volte".

Ripetizione di schemi su una griglia

Immagina una mappa in cui il Ninja deve eseguire:

  1. Lo stesso schema di movimento e raccolta;
  2. Spostarsi di posizione;
  3. Ripetere nuovamente lo stesso schema.

Scrivere questo senza cicli annidati significherebbe copiare molto codice. I cicli annidati permettono di descrivere questa struttura in modo chiaro e compatto.

ninja.py

ninja.py

copy

Ciclo esterno

for i in range(4):

Questo ciclo controlla quante volte si ripete l'intero schema. Ogni iterazione rappresenta un passaggio completo della stessa strategia.

Ciclo interno

for j in range(3):
    ninja.go_right()
    ninja.pick_sushi()

Questo ciclo definisce il modello di azione ripetuta: spostamento e raccolta del sushi.

Spostamento nell'area successiva

ninja.go_left()
ninja.go_left()
ninja.go_down()

Dopo aver completato il ciclo interno, il Ninja cambia posizione e si prepara a ripeterlo nuovamente.

question mark

Osserva il codice qui sotto. Quante volte in totale il Ninja raccoglie il sushi?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 8

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Sezione 4. Capitolo 8
some-alt