Menu
Coddy logo textTech

הוספת הטוויסט

חלק מהיחידה יסודות במסלול ה-Kotlin של Coddy. שיעור 66 מתוך 93.

challenge icon

אתגר

בינוני

בשיעור הקודם הפכת את הגבול העליון לדינמי בכך שקראת אותו מהקלט. עכשיו הוסף את הטוויסט והפוך גם את המחלקים להתאמה אישית!

שנה את הקוד שלך כך:

  1. קרא שלושה מספרים שלמים מהקלט:
    • n - הגבול העליון
    • fizzDivisor - המחלק של "Fizz"
    • buzzDivisor - המחלק של "Buzz"
  2. עדכן את הפונקציה fizzBuzz כך שתקבל שלושה פרמטרים: המספר שיש לבדוק, מחלק fizz ומחלק buzz
  3. בצע לולאה מ-1 עד n והדפס את התוצאה עבור כל מספר באמצעות המחלקים המותאמים אישית

חתימת הפונקציה המעודכנת:

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

לוגיקת ההחזרה (כמו קודם, אבל עם מחלקים מותאמים אישית):

  • "FizzBuzz" אם המספר מתחלק בשני המחלקים
  • "Fizz" אם המספר מתחלק רק ב-fizzDiv
  • "Buzz" אם המספר מתחלק רק ב-buzzDiv
  • המספר כמחרוזת בכל מקרה אחר

קלט: שלושה מספרים שלמים בשורות נפרדות - הגבול העליון, מחלק fizz ומחלק buzz

פלט: תוצאת FizzBuzz המותאמת אישית עבור כל מספר מ-1 עד n, כל אחד בשורה נפרדת

מגבלות קלט: שני המחלקים הם מספרים שלמים חיוביים. המספר הכולל הוא בין 1 ל-100.

נסו בעצמכם

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

כל השיעורים ביחידה יסודות

תרגלו בעצמכם: Kotlin אונליין