Menu
CoddyTech

Menambahkan Sentuhan Unik

Termasuk bagian Dasar-Dasar dalam perjalanan Kotlin di Coddy. Pelajaran 66 dari 93.

challenge icon

Tantangan

Sedang

Di pelajaran sebelumnya, kamu membuat batas atas menjadi dinamis dengan membacanya dari input. Sekarang, tambahkan tantangan dengan membuat pembagi juga dapat disesuaikan!

Ubah kodemu agar:

  1. Membaca tiga bilangan bulat dari input:
    • n - batas atas
    • fizzDivisor - pembagi untuk "Fizz"
    • buzzDivisor - pembagi untuk "Buzz"
  2. Memperbarui fungsi fizzBuzz agar menerima tiga parameter: angka yang diperiksa, pembagi fizz, dan pembagi buzz
  3. Melakukan perulangan dari 1 hingga n dan mencetak hasil untuk setiap angka menggunakan pembagi yang dapat disesuaikan

Signature fungsi yang diperbarui:

fun fizzBuzz(num: Int, fizzDiv: Int, buzzDiv: Int): String

Logika pengembalian nilai, sama seperti sebelumnya, tetapi dengan pembagi yang dapat disesuaikan:

  • "FizzBuzz" jika habis dibagi kedua pembagi
  • "Fizz" jika hanya habis dibagi fizzDiv
  • "Buzz" jika hanya habis dibagi buzzDiv
  • Angka tersebut sebagai string jika tidak memenuhi kondisi di atas

Input: Tiga bilangan bulat pada baris terpisah: batas atas, pembagi fizz, dan pembagi buzz

Output: Hasil FizzBuzz yang disesuaikan untuk setiap angka dari 1 hingga n, masing-masing pada barisnya sendiri

Batasan input: Kedua pembagi adalah bilangan bulat positif. Jumlahnya antara 1 dan 100.

Coba sendiri

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))
    }
}

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Playground Kotlin