Boucle Repeat-While
Fait partie de la section Fondamentaux du Journey Swift de Coddy — leçon 44 sur 86.
La boucle repeat-while est similaire à la boucle while, mais avec une différence clé : elle vérifie la condition après avoir exécuté le bloc de code, pas avant. Cela garantit que le corps de la boucle s'exécute au moins une fois.
var count = 1
repeat {
print(count)
count += 1
} while count <= 3
// Sortie : 1, 2, 3Remarquez la structure : le mot-clé repeat vient en premier, suivi par le bloc de code, et la condition apparaît à la fin après while.
La différence devient claire lorsque la condition est fausse dès le début :
var number = 10
repeat {
print("This runs once!")
} while number < 5
// Résultat : This runs once!Même si number < 5 est faux, le message s'affiche tout de même une fois. Avec une boucle while classique, rien ne s'afficherait du tout.
Utilisez repeat-while lorsque vous avez besoin que le code s'exécute au moins une fois avant de vérifier s'il doit continuer, par exemple pour demander une saisie à un utilisateur jusqu'à ce qu'il fournisse des données valides.
Défi
FacileLisez un entier n depuis l'entrée. Utilisez une boucle repeat-while pour afficher tous les nombres de 1 à n, chacun sur une nouvelle ligne.
Vous recevrez l'entrée suivante :
- Une seule ligne contenant un entier sous forme de chaîne de caractères (par exemple,
"5")
Lisez l'entrée, convertissez-la en un Int, et utilisez une boucle repeat-while pour afficher chaque nombre en commençant par 1.
Exigences :
- Initialisez un compteur à
1 - Affichez la valeur du compteur
- Incrémentez le compteur
- Continuez tant que le compteur est inférieur ou égal à
n
Par exemple, si l'entrée est 4, la sortie devrait être :
1
2
3
4Aide-mémoire
La boucle repeat-while vérifie la condition après l'exécution du bloc de code, garantissant que le corps de la boucle s'exécute au moins une fois.
Syntaxe :
repeat {
// bloc de code
} while conditionExemple :
var count = 1
repeat {
print(count)
count += 1
} while count <= 3
// Résultat : 1, 2, 3Différence clé par rapport à la boucle while :
var number = 10
repeat {
print("This runs once!")
} while number < 5
// Résultat : This runs once!Même lorsque la condition est fausse dès le départ, le bloc de code s'exécute une fois. Une boucle while classique ne s'exécuterait pas du tout dans ce cas.
Utilisez repeat-while lorsque vous avez besoin que le code s'exécute au moins une fois avant de vérifier s'il doit continuer.
Essayez vous-même
// Lire l'entrée et la convertir en Int
let n = Int(readLine()!)!
// TODO : Écrivez votre code ci-dessous
// Commencer un compteur à 1 et utiliser une boucle repeat-while pour afficher les nombres de 1 à nCette 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 composéeRécapitulatif - Mathématiques simplesOpérateurs de comparaison7Entrées/Sorties de base
Fonction PrintInterpolation de chaînesSaisie ReadLineConversion de typesRécapitulatif - Jusqu'à 120Récapitulatif - Vrai ou Faux10Fonctions
Déclarer une fonctionParamètres et argumentsValeurs de retourÉtiquettes d'argumentRécapitulatif - Fonction SigmaRécapitulatif - Fonction de validationValeurs par défaut13Itération sur les séquences
Itérer sur les élémentsLa méthode d'énumérationItérer sur les chaînes P1Itérer sur les chaînes P22Variables
Let vs VarAnnotations de typeNombresStringsBooléensConventions de nommageRécapitulatif - Initialiser des variables5Opérateurs, partie 2
Opérateurs logiques, partie 1Opérateurs logiques, partie 2Récapitulatif - Logique simpleOpérateurs logiques, partie 3Opérateur ternaire8Calculateur de partage de facture
Message de bienvenueSaisie des données11FizzBuzz avec une variante
Présentation du jeuLa fonction FizzBuzz3Les Optionnels
Comprendre les optionnelsDéballage avec If LetL'instruction Guard LetOpérateur de fusion nilRécapitulatif - Déballage sécurisé6Prise de décision
L'instruction IfIf - ElseRécapitulatif - Calculatrice simpleL'instruction SwitchSwitch avec des intervalles9Boucles
Boucle For-InBoucle WhileBoucle Repeat-WhileBreakContinueRécapitulatif - FactorielleIntervalles dans les bouclesBoucles imbriquéesRécapitulatif - Entrée dynamique