Menu
Coddy logo textTech

数値のループ処理

CoddyのKotlinジャーニー「基礎」セクションの一部。レッスン 65/93。

challenge icon

チャレンジ

中級

前のレッスンでは、1つの数値に対して適切な文字列を返す fizzBuzz 関数を作成しました。ここでは、15をハードコーディングする代わりに入力から上限値を読み取り、プログラムを動的にしましょう。

コードを次のように変更してください:

  1. 入力から整数 n(上限値)を読み取る
  2. 1から n まで(n を含む)ループする
  3. 各数値に対して fizzBuzz 関数を呼び出し、結果を出力する

既存の fizzBuzz 関数は変更しないでください。引き続き次の値を返す必要があります:

  • 3と5の両方で割り切れる場合は "FizzBuzz"
  • 3でのみ割り切れる場合は "Fizz"
  • 5でのみ割り切れる場合は "Buzz"
  • それ以外の場合は数値を文字列として返す

入力: 上限値を表す単一の整数

出力: 1から n までの各数値に対するFizzBuzzの結果。それぞれを別の行に出力する

自分で試してみよう

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() {
    for (i in 1..15) {
        println(fizzBuzz(i))
    }
}

基礎のすべてのレッスン

自分で練習してみよう: Kotlinプレイグラウンド