La boucle while
Fait partie de la section Fundamentals du Journey Lua de Coddy — leçon 71 sur 90.
La boucle while est parfaite pour cela - elle continue d'exécuter le même code encore et encore tant qu'une condition reste true.
La syntaxe de base d'une boucle while ressemble à ceci :
while condition do
-- code à répéter
endVoici un exemple simple qui affiche les nombres de 1 à 3 :
local count = 1
while count <= 3 do
print(count)
count = count + 1
endCette boucle fonctionne en vérifiant d'abord si count <= 3 est vraie. Si c'est le cas, le code à l'intérieur s'exécute, affichant le nombre actuel et incrémentant le compteur. Ensuite, elle vérifie à nouveau la condition, et le processus se répète jusqu'à ce que la condition devienne fausse.
Défi
FacileCréez un système de surveillance de la santé qui utilise une boucle while pour suivre le processus de récupération d'un joueur. Commencez par créer une variable nommée playerHealth et attribuez-lui la valeur 25. Ensuite, créez une autre variable nommée maxHealth et attribuez-lui la valeur 100.
Écrivez une boucle while qui continue tant que la santé du joueur est inférieure à sa santé maximale. À l'intérieur de la boucle, imprimez d'abord la valeur de santé actuelle, puis augmentez playerHealth de 15. Comme l'impression se produit avant l'incrémentation, la dernière valeur imprimée sera 85 — la condition de la boucle est vérifiée à nouveau après avoir ajouté 15 (rendant playerHealth égal à 100), et comme 100 n'est pas inférieur à maxHealth, la boucle s'arrête sans imprimer 100.
La sortie attendue est :2540557085
Aide-mémoire
La boucle while répète le code tant qu'une condition reste true :
while condition do
-- code à répéter
endExemple qui affiche les nombres de 1 à 3 :
local count = 1
while count <= 3 do
print(count)
count = count + 1
endLa boucle vérifie la condition, exécute le code si elle est vraie, puis vérifie à nouveau jusqu'à ce que la condition devienne fausse.
Essayez vous-même
-- Initialiser la santé du joueur et la santé maximale
local playerHealth = 25
local maxHealth = 100
-- À FAIRE : Écrivez votre code ici
-- Créer une boucle while qui continue tant que playerHealth < maxHealth
-- À l'intérieur de la boucle : afficher la santé actuelle, puis augmenter playerHealth de 15Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fundamentals
4Opérateurs 2 : Relationnels et Logique
Opérateurs d'égalitéOpérateurs relationnelsL'opérateur 'and'L'opérateur 'or'L'opérateur 'not'Évaluation court-circuitValeurs Truthy et FalsyRécapitulatif - Logique simple7Logique conditionnelle de base
L'instruction if-thenL'instruction if-then-elseL'instruction elseifRécapitulatif - Le coffre au trésor10Tables Partie 1 : Style Liste
Qu'est-ce qu'une Table ?Créer une TableAccéder aux éléments par indexModifier des éléments par indexL'opérateur de longueur '#'table.insert()table.remove()Récapitulatif - Gérer les membres du groupe13Projet : Boutique de potions simple
Configuration du projetAjouter une potion2Variables et types de données
Qu'est-ce qu'une variable ?Les nombresLes chaînes de caractèresLes booléensLa valeur 'nil'La fonction type()Conventions de nommageRécapitulatif - Profil de personnage5Affichage de base
Afficher des littérauxAfficher des variablesAfficher plusieurs valeursCombiner des chaînes et des variablesLa fonction tostring()EntréeLe CastRécapitulatif - Rapport d'étatRécapitulatif - Jusqu'à 1208Bases de la manipulation de chaînes
string.len()string.upper et string.lowerstring.sub()string.rep()string.find()Récapitulatif - Formater le nom d'utilisateur3Opérateurs 1 Arithmétique & Conc.
Opérateurs arithmétiquesOpérateur moduloOpérateur d'exponentiationConcaténation de chaînesPriorité des opérateursRécapitulatif - Calculs simples6Projet : Affichage des stats du personnage
Message de bienvenueDéclarer les statistiques du personnage9Bases des fonctions
Déclarer une fonctionAppeler une fonctionFonctions avec paramètresFonctions avec plusieurs paramètresL'instruction 'return'Récapitulatif - Calculateur d'aire12Bases des boucles
La boucle whileLa boucle repeat-untilLa boucle for numériqueBoucle for avec un pasL'instruction 'break'Récapitulatif - Compte à rebours