Loop Until
Parte da seção Fundamentos do Journey de Ruby da Coddy — lição 45 de 88.
O loop until é o oposto do loop while. Em vez de ser executado enquanto uma condição é verdadeira, ele é executado até que uma condição se torne verdadeira. Pense nisso como "continue até que isso aconteça".
count = 1
until count > 3
puts count
count += 1
endIsso exibe 1, 2, 3. O loop continua enquanto count > 3 for falso. Assim que count se torna 4, a condição é verdadeira e o loop para.
Compare isso com o loop while equivalente:
# Estes dois loops fazem a mesma coisa:
while count <= 3 # execute enquanto isso for TRUE
until count > 3 # execute até que isso seja TRUEO loop until pode tornar seu código mais legível quando você está esperando que algo aconteça. Aqui está um exemplo de contagem regressiva:
num = 5
until num == 0
puts num
num -= 1
end
puts "Liftoff!"Isso faz uma contagem regressiva de 5 a 1, então imprime "Liftoff!" quando num atinge 0. Escolha until quando isso tornar sua intenção mais clara, especialmente quando você estiver esperando por uma condição específica ocorrer.
Desafio
FácilLeia um número n da entrada. Use um loop until para imprimir todos os números de 1 até n, cada um em sua própria linha. Após atingir n, imprima Done! em uma nova linha.
O loop deve continuar até que o contador exceda n.
A entrada será um único número inteiro representando o número alvo.
Por exemplo, se a entrada for 4, a saída deve ser:
1
2
3
4
Done!Se a entrada for 6, a saída deve ser:
1
2
3
4
5
6
Done!Folha de consulta
O loop until executa até que uma condição se torne verdadeira (o oposto do while):
count = 1
until count > 3
puts count
count += 1
end
# Saídas: 1, 2, 3Comparação com o loop while:
while count <= 3 # executa enquanto isso for TRUE
until count > 3 # executa até que isso seja TRUEExemplo de contagem regressiva:
num = 5
until num == 0
puts num
num -= 1
end
puts "Liftoff!"Experimente você mesmo
# Lê o número alvo
n = gets.to_i
# Inicializa o contador
counter = 1
# TODO: Escreva seu código abaixo
# Use um loop until para imprimir números de 1 a n
# O loop deve continuar até que o contador exceda n
# Imprime "Done!" após o loop
puts "Done!"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