Adicionando a Reviravolta
Parte da seção Fundamentos do Journey de Kotlin da Coddy. Lição 66 de 93.
Desafio
MédioNa lição anterior, você tornou o limite superior dinâmico ao lê-lo da entrada. Agora, adicione a reviravolta tornando os divisores personalizáveis também!
Modifique seu código para:
- Ler três inteiros da entrada:
n- o limite superiorfizzDivisor- o divisor de "Fizz"buzzDivisor- o divisor de "Buzz"
- Atualizar sua função
fizzBuzzpara aceitar três parâmetros: o número a verificar, o divisor de fizz e o divisor de buzz - Iterar de 1 até
ne imprimir o resultado para cada número usando os divisores personalizados
Assinatura atualizada da função:
fun fizzBuzz(num: Int, fizzDiv: Int, buzzDiv: Int): StringLógica de retorno (a mesma de antes, mas com divisores personalizados):
"FizzBuzz"se for divisível por ambos os divisores"Fizz"se for divisível apenas porfizzDiv"Buzz"se for divisível apenas porbuzzDiv- O número como uma string caso contrário
Entrada: Três inteiros em linhas separadas - o limite superior, o divisor de fizz e o divisor de buzz
Saída: O resultado personalizado de FizzBuzz para cada número de 1 até n, cada um em sua própria linha
Restrições de entrada: Ambos os divisores são inteiros positivos. A quantidade está entre 1 e 100.
Experimente você mesmo
fun fizzBuzz(n: Int): String {
return if (n % 3 == 0 && n % 5 == 0) {
"FizzBuzz"
} else if (n % 3 == 0) {
"Fizz"
} else if (n % 5 == 0) {
"Buzz"
} else {
n.toString()
}
}
fun main() {
val n = readLine()!!.toInt()
for (i in 1..n) {
println(fizzBuzz(i))
}
}Todas as lições de Fundamentos
4Operadores – Parte 1
Operadores aritméticosOperador móduloAtribuição aumentadaOperadores de comparaçãoRecapitulação – Matemática simples7Entrada e Saída Básicas
Função PrintlnTemplates de StringEntrada com ReadLineConversão de TiposRevisão - Anos até a AposentadoriaRevisão - Verdadeiro ou Falso10Funções
Declare uma funçãoParâmetros e argumentosValores de retornoArgumentos nomeadosValores padrãoFunções de expressão únicaRecapitulação — função SigmaRecapitulação — função de validação2Variáveis
Val vs VarInferência de TiposNúmerosStringBooleanoConvenções de NomenclaturaRecapitulação - Inicializar Variáveis5Operadores – Parte 2
Operadores lógicos – Parte 1Operadores lógicos – Parte 2Operadores lógicos – Parte 3Ternário com expressão ifRecapitulação – Lógica simples8Calculadora de Divisão da Conta
Mensagem de Boas-vindasObtendo a Entrada11FizzBuzz com uma Reviravolta
Visão Geral do JogoA Função FizzBuzz3Nullabilidade
O que é Null SafetyTipos anuláveisOperador de chamada seguraOperador ElvisNoções básicas do desafio de funçõesAsserção de não nuloRecapitulação - Acesso seguro6Tomada de Decisões
Instrução IfIf - ElseIf como ExpressãoExpressão WhenWhen com IntervalosRecapitulação - Calculadora Simples9Laços de Repetição
Laço ForLaço WhileLaço Do-WhileBreakContinueIntervalos em LaçosLaço AninhadoRecapitulação - FatorialRecapitulação - Entrada Dinâmica12Fundamentos de Listas
List vs MutableListAcessando ElementosModificando ListasMétodos de ListaPair e TripleRecapitulação - Lista de ProdutosRecapitulação - Lista Invertida15Rastreador de Despesas Diárias
Visão Geral do ProjetoSair do ProgramaPratique por conta própria: Playground de Kotlin