Ciclo repeat-while
Fa parte della sezione Fondamenti del percorso Swift di Coddy. Lezione 44 di 86.
Il ciclo repeat-while è simile al ciclo while, ma con una differenza fondamentale: verifica la condizione dopo aver eseguito il blocco di codice, non prima. Questo garantisce che il corpo del ciclo venga eseguito almeno una volta.
var count = 1
repeat {
print(count)
count += 1
} while count <= 3
// Output: 1, 2, 3Nota la struttura: la parola chiave repeat viene prima, seguita dal blocco di codice, e la condizione compare alla fine dopo while.
La differenza diventa chiara quando la condizione è falsa fin dall'inizio:
var number = 10
repeat {
print("This runs once!")
} while number < 5
// Output: This runs once!Anche se number < 5 è falso, il messaggio viene comunque stampato una volta. Con un ciclo while normale, non verrebbe stampato nulla.
Usa repeat-while quando hai bisogno che il codice venga eseguito almeno una volta prima di verificare se continuare, ad esempio quando chiedi a un utente di inserire dati finché non ne fornisce di validi.
Sfida
FacileLeggi un intero n dall'input. Usa un ciclo repeat-while per stampare tutti i numeri da 1 a n, ciascuno su una nuova riga.
Riceverai il seguente input:
- Una singola riga contenente un intero come stringa (ad es.,
"5")
Leggi l'input, convertilo in un Int e usa un ciclo repeat-while per stampare ogni numero a partire da 1.
Requisiti:
- Inizia un contatore da
1 - Stampa il valore del contatore
- Incrementa il contatore
- Continua finché il contatore è minore o uguale a
n
Ad esempio, se l'input è 4, l'output dovrebbe essere:
1
2
3
4Provalo tu
// Leggi l'input e convertilo in Int
let n = Int(readLine()!)!
// TODO: Scrivi il tuo codice qui sotto
// Inizializza un contatore a 1 e usa un ciclo repeat-while per stampare i numeri da 1 a nQuesta lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori – Parte 1
Operatori aritmeticiOperatore moduloAssegnazione compostaRiepilogo - Matematica sempliceOperatori di confronto7I/O di base
Funzione printInterpolazione di stringheInput con ReadLineConversione di tipoRipasso - Fino a 120Ripasso - Vero o falso10Funzioni
Dichiarare una funzioneParametri e argomentiValori restituitiEtichette degli argomentiRiepilogo - Funzione SigmaRiepilogo - Funzione di validazioneValori predefiniti13Iterare sulle sequenze
Iterare sugli elementiIl metodo enumerateIterare sulle stringhe P1Iterare sulle stringhe P22Variabili
Let vs VarAnnotazioni di tipoNumeriStringaBooleanoConvenzioni di denominazioneRiepilogo - Inizializzare le variabili5Operatori Parte 2
Operatori logici Parte 1Operatori logici Parte 2Riepilogo - Logica sempliceOperatori logici Parte 3Operatore ternario8Calcolatore per dividere il conto
Messaggio di benvenutoAcquisire i dati11FizzBuzz con una variante
Panoramica del giocoLa funzione FizzBuzz3Valori opzionali
Cosa sono i valori opzionaliEstrazione del valore con if letGuard letOperatore di coalescenza nilRiepilogo - Estrazione sicura del valore6Decisioni
Istruzione ifIf - ElseRipasso - Calcolatrice sempliceIstruzione switchSwitch con intervalli9Cicli
Ciclo for-inCiclo whileCiclo repeat-whileBreakContinueRipasso - FattorialeIntervalli nei cicliCiclo annidatoRipasso - Input dinamicoEsercitati da solo: Playground Swift