Ciclo until
Fa parte della sezione Fondamenti del percorso Ruby di Coddy. Lezione 45 di 88.
Il ciclo until è l'opposto del ciclo while. Invece di essere eseguito mentre una condizione è vera, viene eseguito finché una condizione non diventa vera. Pensalo come «continua finché non succede questo».
count = 1
until count > 3
puts count
count += 1
endQuesto restituisce 1, 2, 3. Il ciclo continua finché count > 3 è falso. Quando count diventa 4, la condizione è vera e il ciclo si interrompe.
Confrontalo con il ciclo while equivalente:
# Questi due cicli fanno la stessa cosa:
while count <= 3 # esegui finché questo è TRUE
until count > 3 # esegui finché questo non è TRUEIl ciclo until può rendere il tuo codice più leggibile quando aspetti che accada qualcosa. Ecco un esempio di conto alla rovescia:
num = 5
until num == 0
puts num
num -= 1
end
puts "Liftoff!"Questo esegue un conto alla rovescia da 5 a 1, poi stampa "Liftoff!" quando num raggiunge 0. Scegli until quando rende più chiara la tua intenzione, soprattutto quando aspetti che si verifichi una condizione specifica.
Sfida
FacileLeggi un numero n dall'input. Usa un ciclo until per stampare tutti i numeri da 1 fino a n, ciascuno su una riga. Dopo aver raggiunto n, stampa Done! su una nuova riga.
Il ciclo dovrebbe continuare finché il contatore non supera n.
L'input sarà un singolo numero intero che rappresenta il numero obiettivo.
Ad esempio, se l'input è 4, l'output dovrebbe essere:
1
2
3
4
Done!Se l'input è 6, l'output dovrebbe essere:
1
2
3
4
5
6
Done!Provalo tu
# Leggi il numero obiettivo
n = gets.to_i
# Inizializza counter
counter = 1
# TODO: Scrivi il tuo codice qui sotto
# Usa un ciclo until per stampare i numeri da 1 a n
# Il ciclo deve continuare finché counter non supera n
# Stampa il testo esatto indicato nelle istruzioni dopo il ciclo
puts "Done!"Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
4Operatori Parte 2
Operatori logici Parte 1Operatori logici Parte 2Riepilogo - Logica sempliceOperatori logici Parte 3Operatori logici Parte 47Calcolatore per dividere il conto
Messaggio di benvenutoAcquisire input dall'utente10FizzBuzz con un colpo di scena
Panoramica del giocoIl metodo FizzBuzz2Variabili e tipi di dato
Numeri e variabiliTipo di dato stringaTipo di dato booleanoTipo di dato SymbolVerifica dei tipi di datoConvenzioni di denominazioneRiepilogo - Creazione di variabili5Strutture decisionali
Istruzione ifIf-ElseRipasso - Calcolatrice sempliceIf-Else annidatoIstruzione unless8Cicli
Ciclo for con intervalliCiclo whilebreaknextRiepilogo - FattorialeCiclo timesCiclo untilCicli annidatiRiepilogo - Input dinamico3Operatori, parte 1
Operatori aritmeticiOperatore moduloScorciatoie aritmeticheRipasso: matematica sempliceOperatori di confronto6Input/Output di base
Output con putsOutput con print e pOutput con variabiliInput con getsMetodo chompConversione di tipoRipasso - Calcolatore dell'etàRipasso - Vero o falsoEsercitati da solo: Compilatore Ruby online