Loop While
Parte da seção Fundamentos do Journey de Ruby da Coddy — lição 40 de 88.
O loop for funciona muito bem quando você sabe exatamente quantas vezes repetir. Mas e se você quiser continuar repetindo até que uma certa condição mude? É aí que o loop while entra.
Um loop while continua em execução enquanto sua condição permanecer verdadeira:
count = 1
while count <= 3
puts count
count += 1
endIsso exibe 1, 2 e 3. O loop verifica a condição antes de cada iteração. Assim que count se torna 4, a condição count <= 3 é falsa, e o loop para.
A principal diferença de um loop for é que você controla quando o loop termina alterando uma variável dentro do loop. Se você esquecer de atualizar a variável, o loop rodará para sempre! Aqui está um exemplo de contagem regressiva:
num = 5
while num > 0
puts num
num -= 1
end
puts "Done!"Isso faz uma contagem regressiva de 5 a 1 e, em seguida, imprime "Done!" após o término do loop. O loop while é especialmente útil quando você não sabe antecipadamente de quantas iterações precisará.
Desafio
FácilLeia um número n da entrada. Use um loop while para imprimir todos os números de n até 1, cada um em sua própria linha. Após o término da contagem regressiva, imprima Blastoff! em uma nova linha.
A entrada será um único número inteiro representando o número inicial para a contagem regressiva.
Por exemplo, se a entrada for 5, a saída deve ser:
5
4
3
2
1
Blastoff!Folha de consulta
Um loop while continua em execução enquanto sua condição permanecer verdadeira:
count = 1
while count <= 3
puts count
count += 1
endO loop verifica a condição antes de cada iteração. Você deve atualizar a variável dentro do loop para eventualmente tornar a condição falsa, caso contrário, o loop será executado para sempre.
Exemplo de contagem regressiva:
num = 5
while num > 0
puts num
num -= 1
end
puts "Done!"Use loops while quando você não souber antecipadamente de quantas iterações precisará, ou quando quiser repetir até que uma condição mude.
Experimente você mesmo
# Leia o número inicial
n = gets.chomp.to_i
# TODO: Escreva seu código abaixo
# Use um loop while para imprimir os números de n até 1
# Depois imprima "Blastoff!"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
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