Menu
Coddy logo textTech

Next (Continue)

Parte da seção Fundamentos do Journey de R da Coddy — lição 41 de 78.

Enquanto o break encerra um loop completamente, às vezes você quer apenas pular a iteração atual e continuar com a próxima. A instrução next faz exatamente isso.

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

Saída:

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

Quando i é igual a 3, a instrução next pula o restante dessa iteração, então o 3 nunca é impresso. O loop então continua com 4 e 5 normalmente.

Isso é útil quando você deseja filtrar certos valores sem interromper todo o loop. Por exemplo, imprimindo apenas números pares:

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

Saída:

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

Aqui, os números ímpares são ignorados usando next, e apenas os números pares são impressos. A principal diferença em relação ao break é que o loop continua em execução - ele apenas pula iterações específicas.

challenge icon

Desafio

Fácil

Leia um número n da entrada. Use um loop for para iterar de 1 a n e imprima apenas os números que não são divisíveis por 4.

Use a instrução next para pular números que são divisíveis por 4 e imprima todos os outros números usando print().

Por exemplo, se a entrada for 10, a saída deve ser:

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

Observe que 4 e 8 são ignorados porque são divisíveis por 4.

Folha de consulta

A instrução next pula a iteração atual de um loop e continua com a próxima:

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

Saída:

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

Quando i é igual a 3, o next pula o restante daquela iteração, então o 3 nunca é impresso. O loop continua com os valores restantes.

Exemplo - imprimindo apenas números pares:

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

Saída:

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

Diferente do break, que sai do loop inteiramente, o next apenas pula iterações específicas enquanto o loop continua em execução.

Experimente você mesmo

# Ler a entrada
con <- file("stdin", "r")
n <- as.integer(suppressWarnings(readLines(con, n = 1)))

# TODO: Escreva seu código abaixo
# Use um loop for para iterar de 1 a n
# Use a instrução next para pular números divisíveis por 4
# Imprima todos os outros números usando print()
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos