Fizz Buzz on Kotlin

How do you think your code structure and logic?

My policy:
– Exclude magic number "15".
– Consider dividing with a view codes and creating data codes.
– Use StringBuilder for a string combination.


(1..100).map {

  // P
  StringBuilder().apply {
    if (it % 3 == 0) append("Fizz")
    if (it % 5 == 0) append("Buzz")
    if (isEmpty()) append(it)
  }.toString()

}.forEach {

  // V
  println(it)

}


1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
...

How do you assemble standard code fragments about this common simple challenge?

Fizz buzz - Wikipedia


JetBrains の IDE が全て半額! 急げ!! 当然 Intellij IDEA もだぞ?

急げ! あと数時間しかないぞ!

Don’t miss the JetBrains Friendship Day special offer — all individual tools for developers at 50% off! #JetBrainsFriends

持ってる知り合いを探して、クーポン発行をお願いする、なのか?!

詳細はよう分からんがお得なはず!!


Kotlin で FizzBuzz

考え方や汎用性など落とし所をどうするか。

方針:
- 「15」はコードに入れない。
- 表示処理の分離(MVP)を考慮する。
- 文字列の結合には StringBuilder を使う。


(1..100).map { 

  // P
  StringBuilder().apply {
    if (it % 3 == 0) append("Fizz")
    if (it % 5 == 0) append("Buzz")
    if (isEmpty()) append(it)
  }.toString()

}.forEach {

  // V
  println(it)

}


1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
...

問う側のスペックを問うブーメラン含みな相性判定なんだろうな。

むしろ方針?

👉 Kotlin で FizzBuzz の適当な記述 
あみだくじを罫線で書く
Fizz buzz - Wikipedia


関連ワード:  Android開発