Adicionando o Toque Especial
Parte da seção Fundamentos do Journey de Ruby da Coddy — lição 57 de 88.
Desafio
FácilNa lição anterior, você criou um programa FizzBuzz que percorre números usando os divisores padrão 3 e 5. Agora, adicione um diferencial tornando os divisores customizáveis através de parâmetros padrão.
Modifique seu método fizzbuzz para aceitar três argumentos:
n- o número a ser verificado (obrigatório)fizz_divisor- o divisor para "Fizz" (opcional, o padrão é3)buzz_divisor- o divisor para "Buzz" (opcional, o padrão é5)
O método deve usar esses divisores personalizados em vez de valores fixos ao verificar a divisibilidade.
Você receberá três linhas de entrada:
- O limite superior
n - O divisor fizz
- O divisor buzz
Faça um loop de 1 até n e chame seu método fizzbuzz atualizado com todos os três argumentos. Imprima cada resultado.
Por exemplo, se as entradas forem:
10
2
3A saída deve ser:
1
Fizz
Buzz
Fizz
5
FizzBuzz
7
Fizz
Buzz
FizzSe as entradas forem:
15
3
5A saída deve ser:
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzzExperimente você mesmo
# Read input
n = gets.chomp.to_i
# Method from previous lesson
def check_divisible(number, divisor)
return number % divisor == 0
end
# Create the fizzbuzz method
def fizzbuzz(n)
if check_divisible(n, 3) && check_divisible(n, 5)
return "FizzBuzz"
elsif check_divisible(n, 3)
return "Fizz"
elsif check_divisible(n, 5)
return "Buzz"
else
return n.to_s
end
end
# Loop through numbers from 1 to n and print the result
(1..n).each do |i|
puts fizzbuzz(i)
endTodas 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