Fizz Buzz 問題を出された

上司がどこかのセミナーで聞いてきた問題

問題

1~100の数字を出力し、3の倍数の時は数字の代わりに"Fizz"、5の倍数の時は代わりに"Buzz"、3と5の倍数の時は代わりに"Fizz Buzz"と出力しなさい。プログラミング言語は問わない。

条件

  1. 制限時間2分以内。
  2. 1行で出来るだけ簡潔に書くこと。
  3. %(余剰)演算子は使わないこと。

PHPでやってみた。

一応2分以内で解けた。

回答

<?php for ($i = 1; $i <= 100; $i++) {$str = ""; if (is_int($i / 3)) {$str .= "Fizz";} if (is_int($i / 5)) {if ($str != "") {$str .= " ";} $str .= "Buzz";} if ($str == "") {$str .= $i;} $str .= "<br />\\n"; echo $str;} ?></p> <p>あああ</p>"