Next
Parte da seção Fundamentos do Journey de Ruby da Coddy — lição 42 de 88.
Enquanto o break sai de um loop completamente, às vezes você só quer pular a iteração atual e passar para a próxima. A palavra-chave next faz exatamente isso.
Quando o Ruby encontra next, ele pula imediatamente para a próxima iteração do loop, ignorando qualquer código restante na iteração atual:
for i in 1..5
if i == 3
next
end
puts i
endIsso exibe 1, 2, 4, 5. Quando i é igual a 3, a palavra-chave next pula a instrução puts e move-se diretamente para a próxima iteração, onde i se torna 4.
Um caso de uso comum é filtrar valores indesejados. Por exemplo, imprimir apenas números pares:
for num in 1..6
if num % 2 != 0
next
end
puts num
end
# Saídas: 2, 4, 6Os números ímpares são ignorados, e apenas os números pares são impressos. Pense no next como se estivesse dizendo "pule este e continue", enquanto o break diz "pare tudo".
Desafio
FácilLeia dois números inteiros da entrada:
- Um número
start - Um número
end
Percorra os números de start até end. Imprima apenas os números que não são divisíveis por 3. Use next para pular os números que são divisíveis por 3.
Cada número deve ser impresso em sua própria linha.
Por exemplo, se as entradas forem 1 e 10, a saída deve ser:
1
2
4
5
7
8
10Se as entradas forem 5 e 9, a saída deve ser:
5
7
8Folha de consulta
A palavra-chave next pula a iteração atual de um loop e passa para a próxima:
for i in 1..5
if i == 3
next
end
puts i
end
# Saídas: 1, 2, 4, 5Use next para filtrar valores. Por exemplo, imprimindo apenas números pares:
for num in 1..6
if num % 2 != 0
next
end
puts num
end
# Saídas: 2, 4, 6next pula a iteração atual e continua o loop, enquanto break sai do loop inteiramente.
Experimente você mesmo
# Ler entrada
start = gets.chomp.to_i
end_num = gets.chomp.to_i
# TODO: Escreva seu código abaixo
# Percorrer os números de start até end_num
# Usar next para pular números divisíveis por 3
# Imprimir números que NÃO são divisíveis por 3Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores Parte 2
Operadores Lógicos Parte 1Operadores Lógicos Parte 2Recapitulação - Lógica SimplesOperadores Lógicos Parte 3Operadores Lógicos Parte 47Calculadora de Divisão de Conta
Mensagem de Boas-vindasObtendo Entrada do Usuário10FizzBuzz com um Toque Especial
Visão Geral do JogoO Método FizzBuzz2Variáveis e Tipos de Dados
Números e VariáveisTipo de Dado StringTipo de Dado BooleanTipo de Dado SymbolVerificando Tipos de DadosConvenções de NomenclaturaRecapitulação - Criação de Variáveis5Tomada de Decisão
Instrução IfIf - ElseRecapitulação - Calculadora SimplesIf - Else AninhadoInstrução Unless8Laços de Repetição
Loop For com IntervalosLoop WhileBreakNextRecapitulação - FatorialLoop TimesLoop UntilLoops AninhadosRecapitulação - Entrada Dinâmica3Operadores Parte 1
Operadores AritméticosOperador de MóduloAtalhos AritméticosRecapitulação - Matemática SimplesOperadores de Comparação6IO Básico
Saída com putsSaída com print e pSaída com VariáveisEntrada com getsMétodo chompConversão de TiposRecapitulação - Calculadora de IdadeRecapitulação - Verdadeiro ou Falso9Métodos
Definindo um MétodoParâmetros de MétodoValores de RetornoRecapitulação - Método SigmaRecapitulação - Método de ValidaçãoValores de Parâmetro Padrão15Rastreador de Despesas Diárias
Visão Geral do ProjetoSair do Programa