Menu
Coddy logo textTech

While-Schleife

Teil des Abschnitts Grundlagen der R-Journey von Coddy — Lektion 39 von 78.

Während eine for-Schleife eine vordefinierte Sequenz durchläuft, läuft eine while-Schleife so lange weiter, wie eine Bedingung TRUE bleibt. Dies ist nützlich, wenn man im Voraus nicht weiß, wie oft man etwas wiederholen muss.

count <- 1
while (count <= 3) {
  print(count)
  count <- count + 1
}

Ausgabe:

[1] 1
[1] 2
[1] 3

Die Schleife prüft die Bedingung count <= 3 vor jeder Iteration. Wenn count 4 wird, ist die Bedingung FALSE und die Schleife stoppt.

Wichtig: Sie müssen die Variable innerhalb der Schleife aktualisieren. Ohne count <- count + 1 wäre die Bedingung immer TRUE, was eine Endlosschleife erzeugt, die niemals endet.

total <- 0
num <- 1
while (num <= 5) {
  total <- total + num
  num <- num + 1
}
print(total)

Ausgabe:

[1] 15

Dieses Beispiel addiert die Zahlen 1 bis 5, was 15 ergibt. Die while-Schleife ist ideal, wenn der Abbruchpunkt von einer Bedingung und nicht von einer festen Sequenz abhängt.

challenge icon

Aufgabe

Einfach

Lies eine Zahl n aus der Eingabe. Verwende eine while-Schleife, um die Summe aller Zahlen von 1 bis n zu berechnen und auszugeben.

Beginne mit einer Variablen, um deine laufende Summe zu verfolgen, und einer weiteren Variablen als Zähler. Addiere fortlaufend zum Gesamtwert, solange dein Zähler kleiner oder gleich n ist, und erhöhe den Zähler bei jeder Iteration.

Nachdem die Schleife abgeschlossen ist, gib die endgültige Summe mit print() aus.

Wenn die Eingabe zum Beispiel 5 ist, sollte die Ausgabe wie folgt aussehen:

[1] 15

Dies liegt daran, dass 1 + 2 + 3 + 4 + 5 = 15 ist.

Spickzettel

Eine while-Schleife wird ausgeführt, solange eine Bedingung TRUE bleibt:

count <- 1
while (count <= 3) {
  print(count)
  count <- count + 1
}

Die Schleife prüft die Bedingung vor jeder Iteration. Wenn die Bedingung FALSE wird, stoppt die Schleife.

Wichtig: Aktualisieren Sie die Variable innerhalb der Schleife immer, um Endlosschleifen zu vermeiden:

total <- 0
num <- 1
while (num <= 5) {
  total <- total + num
  num <- num + 1
}
print(total)  # Ausgabe: [1] 15

While-Schleifen sind ideal, wenn der Endpunkt von einer Bedingung und nicht von einer festen Sequenz abhängt.

Probier es selbst

# Eingabe lesen
con <- file("stdin", "r")
n <- as.integer(suppressWarnings(readLines(con, n = 1)))

# Variablen initialisieren
total <- 0
counter <- 1

# TODO: Schreibe unten deine while-Schleife, um die Summe von 1 bis n zu berechnen


# Ergebnis ausgeben
print(total)
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen