Der Browser-Speicher localStorage ist nicht verfügbar. Entweder unterstützt dein Browser ihn nicht oder du hast ihn deaktiviert oder er ist voll. Ohne localStorage werden deine Lösungen nicht gespeichert.
do...while-Schleife
Die
Unser Codebeispiel prüft beginnend mit
do...while
-Schleife funktioniert ähnlich wie die while
-Schleife.
Der Schleifen-Code wird ausgeführt, solange die Schleifenbedingung true
ergibt.
Einziger Unterschied ist, dass die Schleifenbedingung nach dem Schleifen-Code überprüft wird.
Dadurch ist sichergestellt, dass der Schleifen-Code mindestens einmal durchlaufen wird.
let restDurch6;
let restDurch8;
let kgV = 0;
do {
kgV++;
restDurch6 = kgV % 6;
restDurch8 = kgV % 8;
} while (restDurch6 !== 0 || restDurch8 !== 0);
Dieser Codeabschnitt berechnet das
kleinste gemeinsame Vielfache (kgV) von 6 und 8.
Das kgV ist die kleinste Zahl, die sowohl ein Vielfaches von 6 als auch ein Vielfaches von 8 ist.
Die Vielfachen von 6 sind 6, 12, 18, 24, 30, ... und die Vielfachen von 8 sind 8, 16, 24, 32, ... .
Damit ist das kgV von 6 und 8 die Zahl 24.Unser Codebeispiel prüft beginnend mit
1
, ob kgV
sowohl durch 6
als auch durch 8
teilbar ist.
Die Teilbarkeit wird mithilfe des Modulo-Operators überprüft. Eine Zahl ist durch 6 bzw. 8 teilbar,
wenn sie Modulo 6 bzw. Modulo 8 den Wert 0 liefert. Die Modulo-Berechnung findet im Schleifen-Code statt.
In der Schleifenbedingung wird dann überprüft, ob beide Modulo-Berechnungen 0
ergeben. Ist eine von beiden
Modulo-Berechnungen nicht 0
, ist die Schleifenbedingung true
und der Schleifen-Code wird mit einem um 1 erhöhten kgV
erneut durchlaufen. Ergeben beide Modulo-Berechnungen 0
, ist die Schleifenbedingung false
und die Schleife wird beendet.
kgV
hat dann den gewünschten Wert (nämlich 24), da es die erste Zahl ist, die sowohl durch 6 als auch durch 8 teilbar ist.Aufgabe
Schreibe eine Funktion
Beispiel:
kgV
, die zwei natürliche Zahlen als Parameter entgegennimmt und deren kgV berechnet.
Beispiel:
kgV(6, 8)
sollte 24
zurückgeben.