Menu
Coddy logo textTech

Next (Continue)

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

Während break eine Schleife vollständig beendet, möchten Sie manchmal nur die aktuelle Iteration überspringen und mit der nächsten fortfahren. Die next-Anweisung macht genau das.

for (i in 1:5) {
  if (i == 3) {
    next
  }
  print(i)
}

Ausgabe:

[1] 1
[1] 2
[1] 4
[1] 5

Wenn i gleich 3 ist, überspringt die next-Anweisung den Rest dieser Iteration, sodass 3 nie ausgegeben wird. Die Schleife wird dann ganz normal mit 4 und 5 fortgesetzt.

Dies ist nützlich, wenn Sie bestimmte Werte herausfiltern möchten, ohne die gesamte Schleife zu stoppen. Zum Beispiel, um nur gerade Zahlen auszugeben:

for (num in 1:6) {
  if (num %% 2 != 0) {
    next
  }
  print(num)
}

Ausgabe:

[1] 2
[1] 4
[1] 6

Hier werden ungerade Zahlen mit next übersprungen und nur gerade Zahlen ausgegeben. Der entscheidende Unterschied zu break besteht darin, dass die Schleife weiterläuft – sie überspringt lediglich bestimmte Iterationen.

challenge icon

Aufgabe

Einfach

Lies eine Zahl n von der Eingabe. Verwende eine for-Schleife, um von 1 bis n zu iterieren und gib nur die Zahlen aus, die nicht durch 4 teilbar sind.

Verwende die next-Anweisung, um Zahlen zu überspringen, die durch 4 teilbar sind, und gib alle anderen Zahlen mit print() aus.

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

[1] 1
[1] 2
[1] 3
[1] 5
[1] 6
[1] 7
[1] 9
[1] 10

Beachte, dass 4 und 8 übersprungen werden, da sie durch 4 teilbar sind.

Spickzettel

Die next-Anweisung überspringt die aktuelle Iteration einer Schleife und fährt mit der nächsten fort:

for (i in 1:5) {
  if (i == 3) {
    next
  }
  print(i)
}

Ausgabe:

[1] 1
[1] 2
[1] 4
[1] 5

Wenn i gleich 3 ist, überspringt next den Rest dieser Iteration, sodass 3 niemals gedruckt wird. Die Schleife wird mit den verbleibenden Werten fortgesetzt.

Beispiel - nur gerade Zahlen drucken:

for (num in 1:6) {
  if (num %% 2 != 0) {
    next
  }
  print(num)
}

Ausgabe:

[1] 2
[1] 4
[1] 6

Im Gegensatz zu break, das die Schleife vollständig beendet, überspringt next nur bestimmte Iterationen, während die Schleife weiterläuft.

Probier es selbst

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

# TODO: Schreibe deinen Code unten
# Verwende eine for-Schleife, um von 1 bis n zu iterieren
# Verwende die next-Anweisung, um Zahlen zu überspringen, die durch 4 teilbar sind
# Gib alle anderen Zahlen mit print() aus
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