Menu
Coddy logo textTech

Dokunuşu Ekleme

Coddy'nin Kotlin Journey'sinin Temel Bilgiler bölümünün bir parçası. Ders 66 / 93.

challenge icon

Görev

Orta

Önceki derste, üst sınırı girdiden okuyarak dinamik hâle getirdin. Şimdi bölenleri de özelleştirerek değişikliği yap!

Kodunu şu şekilde değiştir:

  1. Girdiden üç tamsayı oku:
    • n - üst sınır
    • fizzDivisor - "Fizz" için bölen
    • buzzDivisor - "Buzz" için bölen
  2. fizzBuzz işlevini üç parametre kabul edecek şekilde güncelle: kontrol edilecek sayı, fizz böleni ve buzz böleni
  3. 1'den n'e kadar döngü oluştur ve özel bölenleri kullanarak her sayı için sonucu yazdır

Güncellenmiş işlev imzası:

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

Döndürme mantığı (öncekiyle aynı, ancak özel bölenlerle):

  • Her iki bölene de bölünüyorsa "FizzBuzz"
  • Yalnızca fizzDiv'e bölünüyorsa "Fizz"
  • Yalnızca buzzDiv'e bölünüyorsa "Buzz"
  • Aksi durumda sayının dize hâli

Girdi: Ayrı satırlarda üç tamsayı - üst sınır, fizz böleni ve buzz böleni

Çıktı: 1'den n'e kadar her sayı için özelleştirilmiş FizzBuzz sonucu; her sonuç kendi satırında

Girdi kısıtlamaları: Her iki bölen de pozitif tamsayılardır. Sayı adedi 1 ile 100 arasındadır.

Kendin dene

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

Temel Bilgiler bölümündeki tüm dersler

Kendi başına pratik yap: Kotlin playground