Raku-Kurs / Grundlagen / Grundlagen des Kontrollflusses / Schleifen

Verwendung von repeat

Die while- und until-Blöcke werden möglicherweise nie ausgeführt, wenn die Bedingung anfangs False ist. Im Gegensatz dazu wird der repeat-Block immer mindestens einmal ausgeführt. Die Abbruchbedingung wird nach dem Codeblock überprüft. Sie verwenden die gleichen Wörter while oder until für den Test.

Betrachten Sie dieses Programm.

my $x = 100;
repeat {
    $x = prompt 'Enter a number: ';
    say "You entered $x.";
} while $x <= 10;
say "$x is bigger than 10.";

Die Variable $x wird anfangs auf 100 gesetzt, und die while-Bedingung überprüft, ob $x kleiner oder gleich 10 ist. Mit dem gegebenen Wert der Variablen ist die Bedingung bereits False, aber der Codeblock wird trotzdem zuerst ausgeführt.

$ raku t.raku
Enter a number: 10
You entered 10.
Enter a number: 20
You entered 20.
20 is bigger than 10.

Lassen Sie uns das Programm ändern, um until zu verwenden.

my $x = 0;
repeat {
    $x = prompt 'Enter a number: ';
    say "You entered $x.";
} until $x > 10;
say "$x is bigger than 10.";

Führen Sie es aus, um zu bestätigen, dass es wie erwartet funktioniert:

$ raku t.raku
Enter a number: 5
You entered 5.
Enter a number: 15
You entered 15.
15 is bigger than 10.

Praxis

Lösen Sie 1 Quiz zum Inhalt dieses Themas.

Kursnavigation

Quiz — die until-Schleife   |   Quiz — die repeat-Schleife


💪 Oder springen Sie direkt zu den Übungen dieses Abschnitts.