Lezione 2: Flusso di un progetto con un ciclo For
Quando un progetto utilizza un ciclo per , segue comunque la stessa logica durante l'esecuzione dei comandi. Ad esempio, questi due campioni di codice faranno muovere il robot VR nello stesso modo. Tuttavia, il progetto con il ciclo per , ripete i due comandi Drivetrain quattro volte per raggiungere questo obiettivo.

Un ciclo per viene utilizzato per ripetere una serie di comandi per un numero specificato di . Il ciclo per ripete (anche detto itera) la sequenza di comandi al suo interno. In un ciclo Python for , la variabile 'value' viene utilizzata per tracciare l'iterazione corrente e la parola chiave 'in' utilizza la funzione range per specificare il numero di iterazioni. 
La funzione range identifica quante volte il ciclo deve essere iterato (o ripetuto). Per ripetere i comportamenti per il numero di volte desiderato, impostare il parametro della funzione intervallo .
La funzione range crea essenzialmente un elenco temporaneo che specifica cosa deve iterare il ciclo per essere completato. Nel caso di comportamenti ripetuti, come disegnare i quattro lati di un quadrato, la funzione intervallo utilizza un elenco temporaneo di (0, 1, 2, 3) per consentire al robot VR di eseguire quei comandi quattro volte. Il movimento del Robot VR cambierà a seconda del parametro della funzione range, come mostrato qui.
![]() |
![]() |
Comandi driveetrain eseguiti 0 volte. |
![]() |
![]() |
Comandi driveetrain eseguiti 1 volta. |
![]() |
![]() |
Comandi driveetrain eseguiti 2 volte. |
![]() |
![]() |
Comandi driveetrain eseguiti 3 volte. |
![]() |
![]() |
Comandi driveetrain eseguiti 4 volte, completando tutti e 4 i lati della piazza. |
|
|
![]() |
I comandi Drivetrain sono stati eseguiti 5 volte, completando il quadrato, quindi tracciando di nuovo il primo lato. |
Si noti che la forma disegnata del quadrato non è cambiata quando la funzione intervallo è cambiata da quattro a cinque; ma la posizione finale del robot VR sì. Pertanto, utilizzando un ciclo per con la funzione predefinita di dieci, si otterrebbe la stessa forma quadrata, ma il robot VR continuerebbe a ripetere i comportamenti per altre sei volte.
Il robot VR eseguirà i comandi dall'intestazione del ciclo per all'ultimo comando rientrato. L'intestazione del ciclo for indica che il robot VR deve ripetere le azioni all'interno del ciclo il numero specificato di volte prima di passare al comando successivo al di fuori del ciclo for. Le righe rientrate indicano quali comandi si trovano all'interno del ciclo per e devono essere ripetuti.
Per tua informazione
In VEXcode VR, un comando wait viene sempre aggiunto con il ciclo per . Lo scopo del comando wait è garantire che VEXcode VR possa eseguire correttamente il progetto come previsto, grazie alla natura basata sul Web della piattaforma VEXcode VR. Il comando wait non dovrebbe mai essere eliminato quando si utilizza un ciclo per , altrimenti il progetto potrebbe non funzionare come previsto.

Il numero specificato di volte in cui il ciclo per viene impostato per l'esecuzione consente al progetto di proseguire con il ciclo per una volta completate le iterazioni necessarie. Il parametro della funzione intervallo nel ciclo per deve essere raggiunto prima che il progetto passi al comando successivo al di fuori del ciclo. Nell'esempio di codice seguente, una volta che i comandi Drivetrain nel ciclo per sono stati eseguiti quattro volte, il progetto uscirà dal ciclo per , imposterà il colore della penna su rosso e guiderà in retromarcia. 
Mini sfida
In questo progetto, il robot VR dovrebbe disegnare un quadrato blu sull' Art Canvas Playground, ma ci sono errori nel progetto. Modifica il progetto per risolvere la mini sfida!

Il video qui sotto mostra cosa fare per completare la mini sfida. Il robot parte al centro del parco giochi e disegna i quattro lati di un grande quadrato blu.
- Guarda il video della soluzione e rivedi come dovrebbe muoversi il robot VR per completare la mini sfida.
- Modificare il progetto Unit3Lesson2 in modo che corrisponda a questa immagine o copiare il codice seguente.
def main():
pen.move(DOWN)
pen.set_pen_color(RED)
drivetrain.drive_for(FORWARD, 600, MM)
for value in range(3):
drivetrain.drive_for(FORWARD, 600, MM)
drivetrain.turn_for(RIGHT, 90, DEGREES)
wait (5, MSEC)- Avviare il progetto e identificare dove il Robot VR non completa i comportamenti previsti.
- Modificare il progetto ed eseguirlo di nuovo. Verificare se il robot VR completa i comportamenti previsti.
- Se il robot VR non disegna un quadrato blu, ripetere il passaggio precedente e riprovare. Continua a modificare ed eseguire il tuo progetto fino a quando il Robot VR non disegna un quadrato blu.
- Una volta che il robot VR disegna con successo un quadrato blu sull' Art Canvas Playground, salva il progetto.
Congratulazioni! Hai risolto la mini sfida!











