Plages dans les boucles
Fait partie de la section Fondamentaux du Journey Kotlin de Coddy. Leçon 51 sur 93.
Jusqu’à présent, nous avons utilisé 1..5 pour créer des plages qui augmentent de un. Kotlin offre des façons plus flexibles de définir des plages pour vos boucles.
Pour compter à rebours, utilisez downTo :
for (i in 5 downTo 1) {
println(i)
}
// Sortie : 5, 4, 3, 2, 1Pour ignorer des nombres, ajoute step pour contrôler l’incrément :
for (i in 0..10 step 2) {
println(i)
}
// Sortie : 0, 2, 4, 6, 8, 10Vous pouvez combiner downTo avec step pour effectuer un compte à rebours avec des intervalles personnalisés :
for (i in 10 downTo 1 step 3) {
println(i)
}
// Sortie : 10, 7, 4, 1Si vous devez exclure la dernière valeur, utilisez until au lieu de .. :
for (i in 1 until 5) {
println(i)
}
// Sortie : 1, 2, 3, 4Le mot-clé until est particulièrement utile lorsque vous travaillez avec des indices commençant à zéro, lorsque vous devez souvent vous arrêter avant d’atteindre un certain nombre.
Défi
MoyenLisez deux entiers saisis en entrée : start et end.
Affichez tous les nombres pairs de start jusqu’à end (inclus), chacun sur une ligne distincte.
Utilisez downTo avec step pour créer la plage. Si start est impair, commencez par le premier nombre pair inférieur.
Par exemple, si l’entrée est :
10
2La sortie doit être :
10
8
6
4
2Si l’entrée est :
9
3La sortie doit être :
8
6
4S’il n’y a aucun nombre pair dans la plage demandée, affichez No even numbers sur une ligne. Sinon, affichez chaque nombre pair sur sa propre ligne.
Essayez vous-même
fun main() {
// Lire l'entrée
val start = readLine()!!.toInt()
val end = readLine()!!.toInt()
// TODO: Écrivez votre code ci-dessous
// Utilisez downTo avec step pour afficher tous les nombres pairs de start jusqu'à end
// Si start est impair, commencez par le premier nombre pair en dessous
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
4Opérateurs, partie 1
Opérateurs arithmétiquesOpérateur moduloAffectation augmentéeOpérateurs de comparaisonRécapitulatif - Mathématiques simples7E/S de base
Fonction PrintlnModèles de chaînesEntrée ReadLineConversion de typeRécapitulatif - Années avant la retraiteRécapitulatif - Vrai ou faux10Fonctions
Déclarer une fonctionParamètres et argumentsValeurs de retourArguments nommésValeurs par défautFonctions à expression uniqueRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validation2Variables
Val ou VarInférence de typeNombresChaîne de caractèresBooléenConventions de nommageRécapitulatif - Initialiser des variables5Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Opérateurs logiques, partie 3Ternaire avec une expression ifRécapitulatif - Logique simple8Calculateur de partage d’addition
Message de bienvenueSaisie des données11FizzBuzz avec une variante
Aperçu du jeuLa fonction FizzBuzz3Nullabilité
Qu’est-ce que la sécurité vis-à-vis de nullTypes nullableOpérateur d’appel sécuriséOpérateur ElvisBases des défis de fonctionsAssertion de non-nullitéRécapitulatif - Accès sécurisé6Prise de décision
Instruction IfIf - ElseIf comme expressionExpression WhenWhen avec des plagesRécapitulatif - Calculatrice simple9Boucles
Boucle ForBoucle WhileBoucle Do-WhileBreakContinuePlages dans les bouclesBoucle imbriquéeRécapitulatif - FactorielleRécapitulatif - Entrée dynamiqueEntraînez-vous par vous-même : Playground Kotlin