Menu
CoddyTech

加入新玩法

本课属于 Coddy Kotlin 学习旅程的“基础知识”单元。第 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"
  • 如果只能被 fizzDiv 整除,则返回 "Fizz"
  • 如果只能被 buzzDiv 整除,则返回 "Buzz"
  • 否则,将数字作为字符串返回

输入:三行,每行一个整数,依次表示上限、Fizz 除数和 Buzz 除数

输出:从 1 到 n 每个数字对应的自定义 FizzBuzz 结果,每个结果单独占一行

输入限制:两个除数都是正整数。数量在 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 在线编辑器