Menu
Coddy logo textTech

Suivant (Continue)

Fait partie de la section Fondamentaux du Journey R de Coddy — leçon 41 sur 78.

Alors que break sort entièrement d'une boucle, vous voulez parfois seulement ignorer l'itération actuelle et continuer avec la suivante. L'instruction next fait exactement cela.

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

Résultat :

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

Lorsque i est égal à 3, l'instruction next ignore le reste de cette itération, donc 3 n'est jamais affiché. La boucle continue ensuite avec 4 et 5 normalement.

Ceci est utile lorsque vous souhaitez filtrer certaines valeurs sans arrêter l'ensemble de la boucle. Par exemple, pour n'afficher que les nombres pairs :

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

Résultat :

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

Ici, les nombres impairs sont ignorés en utilisant next, et seuls les nombres pairs sont affichés. La différence clé par rapport à break est que la boucle continue de s'exécuter — elle ignore simplement des itérations spécifiques.

challenge icon

Défi

Facile

Lisez un nombre n à partir de l'entrée. Utilisez une boucle for pour itérer de 1 à n et affichez uniquement les nombres qui ne sont pas divisibles par 4.

Utilisez l'instruction next pour ignorer les nombres divisibles par 4, et affichez tous les autres nombres en utilisant print().

Par exemple, si l'entrée est 10, la sortie devrait être :

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

Notez que 4 et 8 sont ignorés car ils sont divisibles par 4.

Aide-mémoire

L'instruction next ignore l'itération actuelle d'une boucle et passe à la suivante :

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

Sortie :

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

Lorsque i est égal à 3, next ignore le reste de cette itération, donc 3 n'est jamais affiché. La boucle continue avec les valeurs restantes.

Exemple - affichage des nombres pairs uniquement :

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

Sortie :

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

Contrairement à break qui quitte entièrement la boucle, next ignore seulement des itérations spécifiques pendant que la boucle continue de s'exécuter.

Essayez vous-même

# Lire l'entrée
con <- file("stdin", "r")
n <- as.integer(suppressWarnings(readLines(con, n = 1)))

# TODO: Écrivez votre code ci-dessous
# Utilisez une boucle for pour itérer de 1 à n
# Utilisez l'instruction next pour ignorer les nombres divisibles par 4
# Affichez tous les autres nombres en utilisant print()
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fondamentaux