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] 5Wenn 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] 6Hier 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.
Aufgabe
EinfachLies 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] 10Beachte, 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] 5Wenn 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] 6Im 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() ausDiese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 2
Logische Operatoren (AND, OR)Logische Operatoren Teil 2 (NOT)Wiederholung – Einfache LogikVektorisierte Logik Teil 1Vektorisierte Logik Teil 27Rechnungs-Split-Rechner
WillkommensnachrichtBenutzereingaben abfragen10FizzBuzz mit einer Besonderheit
SpielübersichtDie FizzBuzz-Funktion13Vektoren für Fortgeschrittene
Vektor-Slicing und IndizierungLogische IndizierungVektorarithmetik & RecyclingDer %in%-Operator2Variablen und Datentypen
Numerischer DatentypGanzzahl-DatentypZeichen-DatentypLogischer DatentypDatentypen prüfenBenennungskonventionenFehlende Werte: NAZusammenfassung – Variablenerstellung5Entscheidungsfindung
If-AnweisungIf - ElseWiederholung - Einfacher TaschenrechnerVerschachteltes If - Else8Schleifen
For-SchleifeWhile-SchleifeBreakNext (Continue)Rückblick - FakultätSequenzgenerierung (seq, :)Verschachtelte SchleifenRückblick - Dynamische Eingabe3Operatoren Teil 1
Arithmetische OperatorenGanzzahlige Division und ModuloZuweisungsoperatorenWiederholung - Einfache MathematikVergleichsoperatoren6Grundlagen der Ein- und Ausgabe
Print-AusgabeCat zur AusgabeAusgabe mit VariablenEingabe lesen mit readline()Grundlagen der TypumwandlungWiederholung – AltersrechnerWiederholung – Wahr oder Falsch9Funktionen
Funktionen deklarierenFunktionsargumenteRückgabewerteWiederholung - Sigma-FunktionWiederholung - ValidierungsfunktionStandard-Parameterwerte