0Pricing
Swift Academy · Lezione

Cicli while e repeat-while

Utilizzi cicli basati su condizioni e garantisca almeno un'esecuzione con repeat-while.

Cicli while e repeat-while è una lezione Swift Academy gratuita su CoddyKit. Questa è la lezione 2 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Swift Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Swift Academy include 4 lezioni in totale.

Benvenuto

Quando il numero di iterazioni non è noto in anticipo, i cicli `while` e `repeat-while` sono la scelta giusta. Vediamo quando e come usare ciascuno dei due.

Il ciclo while

Un ciclo `while` valuta la condizione *prima* di ogni iterazione: ```swift var count = 0 while count < 5 { print(count) count += 1 } // prints 0, 1, 2, 3, 4 ``` Se la condizione è inizialmente falsa, il corpo non viene mai eseguito.

Il ciclo repeat-while

Un ciclo `repeat-while` valuta la condizione *dopo* ogni iterazione, garantendo almeno un'esecuzione: ```swift var x = 10 repeat { print(x) x -= 3 } while x > 0 // prints 10, 7, 4, 1 ```

while e repeat-while

Usi `while` quando il corpo potrebbe non dover essere eseguito. Usi `repeat-while` quando deve essere eseguito almeno una volta: ```swift // Reading input until valid — must try at least once: repeat { input = readLine() ?? "" } while input.isEmpty ```

Cicli infiniti con while true

Un ciclo `while true` viene eseguito indefinitamente finché non viene raggiunto un `break`; è un costrutto comune nei cicli degli eventi: ```swift while true { let event = nextEvent() if event == .quit { break } handleEvent(event) } ``` Si assicuri sempre che esista una condizione di uscita raggiungibile.

Esempio di conto alla rovescia

```swift var countdown = 5 while countdown > 0 { print("\(countdown)...") countdown -= 1 } print("Liftoff!") ``` Questo è un modello classico per i cicli while: decrementare il valore finché la condizione non è più vera.

Evitare i cicli infiniti

Errori comuni che causano cicli infiniti: ```swift var i = 0 while i < 5 { print(i) // forgot i += 1 ← infinite loop! } ``` Verifichi sempre che la variabile del ciclo venga aggiornata e che la condizione diventi infine falsa.

while con optional binding

Combini `while` con l'optional binding per elaborare una sequenza fino a `nil`: ```swift var items: [Int] = [1, 2, 3] while let value = items.first { print(value) items.removeFirst() } ``` Questo schema è efficace per consumare collezioni in modo distruttivo.

Esempio di ciclo di gioco

```swift var lives = 3 var gameOver = false while !gameOver { let hit = Bool.random() if hit { lives -= 1 } if lives == 0 { gameOver = true } } print("Game Over") ``` I cicli di gioco reali usano questo schema per continuare a funzionare fino al verificarsi di una condizione terminale.

Cicli while annidati

I cicli while possono essere annidati, una situazione comune negli algoritmi di analisi e di elaborazione delle matrici: ```swift var row = 0 while row < 3 { var col = 0 while col < 3 { print("(\(row),\(col))", terminator: " ") col += 1 } print(); row += 1 } ```

Verifica rapida

Quale ciclo garantisce che il proprio corpo venga eseguito **almeno una volta**?

Riepilogo

Punti chiave: • `while condition { }`: controlla la condizione prima di ogni esecuzione; potrebbe non essere mai eseguito • `repeat { } while condition`: controlla la condizione dopo; viene eseguito almeno una volta • `while true { ... break }`: schema per i cicli degli eventi • Si assicuri sempre che la variabile del ciclo progredisca verso la terminazione • Combini `while` con l'optional binding per consumare le sequenze in modo chiaro Prossimo argomento: iterare sulle collezioni con for-in.

Domande Frequenti

La lezione «Cicli while e repeat-while» è gratuita?

Sì — il testo completo di «Cicli while e repeat-while» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Swift Academy, passa a CoddyKit PRO. Il corso Swift Academy include 4 lezioni in totale.

Cosa imparerò in «Cicli while e repeat-while»?

Utilizzi cicli basati su condizioni e garantisca almeno un'esecuzione con repeat-while. Eserciti Swift Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Swift Academy?

Non è richiesta alcuna esperienza precedente. Swift Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 2 di 4.

Quanto tempo richiede la lezione «Cicli while e repeat-while»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Swift Academy?

Sì. Ogni lezione Swift Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Cicli for-in con intervalli
  2. Cicli while e repeat-while
  3. Iterazione delle collezioni con for-in
  4. break, continue e istruzioni con etichetta
← Torna a Swift Academy