Loop Times
Parte da seção Fundamentos do Journey de Ruby da Coddy — lição 44 de 88.
O Ruby oferece uma maneira mais elegante de repetir o código um número específico de vezes. O loop times é uma abordagem ao estilo Ruby que se lê quase como inglês.
Em vez de configurar um intervalo, você simplesmente chama times em um número:
3.times do
puts "Hello!"
endIsso imprime "Hello!" três vezes. O código dentro do bloco do...end é executado exatamente 3 vezes. É mais limpo do que escrever for i in 1..3 quando você não precisa da variável de contador.
Mas e se você precisar saber em qual iteração está? O loop times pode fornecer um índice que começa em 0:
4.times do |i|
puts i
end
# Saída: 0, 1, 2, 3A variável i entre os pipes |i| recebe o número da iteração atual. Note que ela conta a partir de 0, não 1. Isso é útil quando você precisa tanto da repetição quanto de um contador:
3.times do |num|
puts "Iteration #{num + 1}"
end
# Saída: Iteration 1, Iteration 2, Iteration 3O loop times é perfeito quando você sabe exatamente de quantas repetições precisa e deseja um código limpo e legível.
Desafio
FácilLeia um número n da entrada. Use o loop times com seu índice para imprimir uma tabela de multiplicação para o número 2, mostrando os produtos de 2 x 0 até 2 x (n-1).
Cada linha deve seguir o formato: 2 x [index] = [result]
A entrada será um único número inteiro representando quantas vezes o loop deve ser executado.
Por exemplo, se a entrada for 4, a saída deve ser:
2 x 0 = 0
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6Se a entrada for 6, a saída deve ser:
2 x 0 = 0
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
2 x 5 = 10Folha de consulta
O loop times repete o código um número específico de vezes:
3.times do
puts "Hello!"
endPara acessar o número da iteração atual (começando em 0), use uma variável entre pipes:
4.times do |i|
puts i
end
# Saídas: 0, 1, 2, 3Você pode usar a variável de índice em cálculos:
3.times do |num|
puts "Iteration #{num + 1}"
end
# Saídas: Iteration 1, Iteration 2, Iteration 3Experimente você mesmo
# Lê o número de iterações
n = gets.to_i
# TODO: Escreva seu código abaixo
# Use o loop times com seu índice para imprimir a tabela de multiplicação por 2
# Formato: 2 x [índice] = [resultado]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