Die while-Schleife
Teil des Abschnitts Grundlagen der Lua-Journey von Coddy. Lektion 71 von 90.
Die while-Schleife ist dafür perfekt geeignet – sie führt denselben Code immer wieder aus, solange eine Bedingung true bleibt.
Die grundlegende Syntax einer while-Schleife sieht so aus:
while condition do
-- Code zum Wiederholen
endHier ist ein einfaches Beispiel, das die Zahlen von 1 bis 3 ausgibt:
local count = 1
while count <= 3 do
print(count)
count = count + 1
endDiese Schleife funktioniert, indem sie zunächst prüft, ob count <= 3 wahr ist. Wenn dies der Fall ist, wird der darin enthaltene Code ausgeführt, wobei die aktuelle Zahl ausgegeben und der Zähler erhöht wird. Anschließend wird die Bedingung erneut geprüft, und der Vorgang wird wiederholt, bis die Bedingung falsch wird.
Aufgabe
EinfachErstelle ein System zur Überwachung der Gesundheit, das eine while-Schleife verwendet, um den Erholungsprozess eines Spielers zu verfolgen. Erstelle zunächst eine Variable namens playerHealth und weise ihr den Wert 25 zu. Erstelle dann eine weitere Variable namens maxHealth und weise ihr den Wert 100 zu.
Schreibe eine while-Schleife, die so lange fortgesetzt wird, wie die Gesundheit des Spielers geringer als seine maximale Gesundheit ist. Gib innerhalb der Schleife zuerst den aktuellen Gesundheitswert aus und erhöhe dann playerHealth um 15. Da die Ausgabe vor der Erhöhung erfolgt, wird der letzte ausgegebene Wert 85 sein: Die Schleifenbedingung wird nach dem Addieren von 15 erneut überprüft (playerHealth entspricht dann 100), und da 100 nicht kleiner als maxHealth ist, wird die Schleife beendet, ohne 100 auszugeben.
Die erwartete Ausgabe ist:2540557085
Probier es selbst
-- Initialisiere Spieler-Gesundheit und maximale Gesundheit
local playerHealth = 25
local maxHealth = 100
-- TODO: Schreibe deinen Code hier
-- Erstelle eine while-Schleife, die fortgesetzt wird, solange playerHealth < maxHealth
-- Innerhalb der Schleife: gib die aktuelle Gesundheit aus, dann erhöhe playerHealth um 15Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren 2: Vergleichs- und logische Operatoren
GleichheitsoperatorenVergleichsoperatorenDer 'and'-OperatorDer 'or'-OperatorDer 'not'-OperatorKurzschlussauswertungTruthy- und Falsy-WerteRückblick – Einfache Logik7Grundlegende bedingte Logik
Die if-then-AnweisungDie if-then-else-AnweisungDie elseif-AnweisungWiederholung – Schatztruhe2Variablen und Datentypen
Was ist eine Variable?ZahlenZeichenkettenBoolesche WerteDer Wert „nil“Die Funktion type()NamenskonventionenRückblick – Charakterprofil5Grundlegende Ausgabe
Literale ausgebenVariablen ausgebenMehrere Werte ausgebenStrings & Variablen kombinierenDie tostring()-FunktionEingabeTypumwandlungRückblick – StatusberichtRückblick – Bis 1208Grundlagen der String-Manipulation
string.len()string.upper & string.lowerstring.sub()string.rep()string.find()Rückblick – Benutzernamen formatieren3Operatoren 1: Arithmetik & Verkettung
Arithmetische OperatorenModulo-OperatorPotenzierungsoperatorVerkettung von ZeichenkettenRangfolge der OperatorenWiederholung – Einfache Berechnungen6Projekt: Charakterwerte anzeigen
WillkommensnachrichtCharakterwerte deklarieren9Grundlagen von Funktionen
Eine Funktion deklarierenEine Funktion aufrufenFunktionen mit ParameternFunktionen mit mehreren ParameternDie Anweisung „return“Zusammenfassung – Flächenrechner12Grundlagen der Schleifen
Die while-SchleifeDie repeat-until-SchleifeDie numerische for-Schleifefor-Schleife mit SchrittweiteDie Anweisung „break“Rückblick – Countdown15Abschließende Herausforderungen
Wiederholung – SpielzugWiederholung – Einfache DatenbankWiederholung – Summe gerader ZahlenÜbe selbstständig: Online-Lua-Compiler