Aggiungere la variante
Fa parte della sezione Fondamenti del percorso Kotlin di Coddy. Lezione 66 di 93.
Sfida
MedioNella lezione precedente, hai reso dinamico il limite superiore leggendolo dall'input. Ora aggiungi la particolarità rendendo personalizzabili anche i divisori!
Modifica il tuo codice per:
- Leggere tre interi dall'input:
n- il limite superiorefizzDivisor- il divisore per "Fizz"buzzDivisor- il divisore per "Buzz"
- Aggiornare la funzione
fizzBuzzin modo che accetti tre parametri: il numero da controllare, il divisore di fizz e il divisore di buzz - Eseguire un ciclo da 1 a
ne stampare il risultato per ogni numero usando i divisori personalizzati
Firma della funzione aggiornata:
fun fizzBuzz(num: Int, fizzDiv: Int, buzzDiv: Int): StringLogica di ritorno (come prima, ma con divisori personalizzati):
"FizzBuzz"se è divisibile per entrambi i divisori"Fizz"se è divisibile solo perfizzDiv"Buzz"se è divisibile solo perbuzzDiv- Il numero come stringa in tutti gli altri casi
Input: Tre interi su righe separate: il limite superiore, il divisore di fizz e il divisore di buzz
Output: Il risultato FizzBuzz personalizzato per ogni numero da 1 a n, ciascuno su una riga separata
Vincoli dell'input: entrambi i divisori sono interi positivi. Il conteggio è compreso tra 1 e 100.
Provalo tu
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))
}
}Tutte le lezioni di Fondamenti
4Operatori Parte 1
Operatori aritmeticiOperatore moduloAssegnazione compostaOperatori di confrontoRipasso: matematica semplice7Input/output di base
Funzione printlnTemplate di stringheInput con readLineConversione di tipoRiepilogo - Anni alla pensioneRiepilogo - Vero o falso10Funzioni
Dichiarare una funzioneParametri e argomentiValori di ritornoArgomenti denominatiValori predefinitiFunzioni a espressione singolaRiepilogo - Funzione SigmaRiepilogo - Funzione di validazione2Variabili
Val vs VarInferenza del tipoNumeriStringaBooleanoConvenzioni di denominazioneRiepilogo - Inizializzare le variabili5Operatori Parte 2
Operatori logici Parte 1Operatori logici Parte 2Operatori logici Parte 3Ternario con espressione ifRipasso - Logica semplice8Calcolatore per dividere il conto
Messaggio di benvenutoAcquisire i dati11FizzBuzz con un tocco
Panoramica del giocoLa funzione FizzBuzz3Nullabilità
Cos'è la null safetyTipi nullableOperatore di chiamata sicuraOperatore ElvisBasi della sfida sulle funzioniAsserzione non-nullRiepilogo - Accesso sicuro6Prendere decisioni
Istruzione ifIf-elseIf come espressioneEspressione whenwhen con intervalliRiepilogo - Calcolatrice semplice9Cicli
Ciclo forCiclo whileCiclo do-whilebreakcontinueIntervalli nei cicliCiclo annidatoRipasso - fattorialeRipasso - input dinamicoEsercitati da solo: Playground Kotlin