Intervalli nei cicli
Fa parte della sezione Fondamenti del percorso Kotlin di Coddy. Lezione 51 di 93.
Finora abbiamo usato 1..5 per creare intervalli che aumentano di uno. Kotlin offre modi più flessibili per definire gli intervalli dei tuoi cicli.
Per contare all'indietro, usa downTo:
for (i in 5 downTo 1) {
println(i)
}
// Risultato: 5, 4, 3, 2, 1Per saltare dei numeri, aggiungi step per controllare l’incremento:
for (i in 0..10 step 2) {
println(i)
}
// Risultato: 0, 2, 4, 6, 8, 10Puoi combinare downTo con step per contare all’indietro con intervalli personalizzati:
for (i in 10 downTo 1 step 3) {
println(i)
}
// Output: 10, 7, 4, 1Se devi escludere l’ultimo valore, usa until invece di ..:
for (i in 1 until 5) {
println(i)
}
// Output: 1, 2, 3, 4La parola chiave until è particolarmente utile quando lavori con indici a base zero, dove spesso devi fermarti prima di raggiungere un determinato numero.
Sfida
MedioLeggi due interi dall'input: start e end.
Stampa tutti i numeri pari da start a end in ordine decrescente (estremi inclusi), ciascuno su una riga separata.
Usa downTo con step per creare l'intervallo. Se start è dispari, inizia dal primo numero pari inferiore.
Per esempio, se l'input è:
10
2L'output dovrebbe essere:
10
8
6
4
2Se l'input è:
9
3L'output dovrebbe essere:
8
6
4Se non ci sono numeri pari nell'intervallo richiesto, stampa No even numbers su una riga. Altrimenti, stampa ogni numero pari su una riga separata.
Provalo tu
fun main() {
// Leggi l'input
val start = readLine()!!.toInt()
val end = readLine()!!.toInt()
// TODO: Scrivi il tuo codice qui sotto
// Usa downTo con step per stampare tutti i numeri pari da start fino a end
// Se start è dispari, inizia dal primo numero pari inferiore a start
}Questa 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 compostaOperatori di confrontoRipasso: matematica semplice7Input/output di base
Funzione printlnTemplate di stringheInput con readLineConversione di tipoRiepilogo - Anni alla pensioneRiepilogo - Vero o falso10Funzioni
Dichiarare una funzioneParametri e argomentiValori di ritornoArgomenti denominatiValori predefinitiFunzioni a espressione singolaRiepilogo - Funzione SigmaRiepilogo - Funzione di validazione2Variabili
Val vs VarInferenza del tipoNumeriStringaBooleanoConvenzioni di denominazioneRiepilogo - Inizializzare le variabili5Operatori Parte 2
Operatori logici Parte 1Operatori logici Parte 2Operatori logici Parte 3Ternario con espressione ifRipasso - Logica semplice8Calcolatore per dividere il conto
Messaggio di benvenutoAcquisire i dati11FizzBuzz con un tocco
Panoramica del giocoLa funzione FizzBuzz3Nullabilità
Cos'è la null safetyTipi nullableOperatore di chiamata sicuraOperatore ElvisBasi della sfida sulle funzioniAsserzione non-nullRiepilogo - Accesso sicuro6Prendere decisioni
Istruzione ifIf-elseIf come espressioneEspressione whenwhen con intervalliRiepilogo - Calcolatrice semplice9Cicli
Ciclo forCiclo whileCiclo do-whilebreakcontinueIntervalli nei cicliCiclo annidatoRipasso - fattorialeRipasso - input dinamicoEsercitati da solo: Playground Kotlin