明日から仕事なので世界のナベアツ問題の応用編もコードをLINQで書いてみた

勝手に世界のナベアツ問題と名付けてみました。

ルール

1から40まで数字を読み上げる。

3の倍数と3のついた数字の時だけアホになる。

応用編として、

上のルール+8の倍数の時だけ気持ちよくなる。

FizzBuzz問題の変わりに世界のナベアツ問題をコーディングしたらおもしろいだろうか – NAL-6295の舌先三寸

結果的に、よりいっそう脱力感に・・・。

var 読み上げるリスト = from 今の数字 in Enumerable.Range(1, 40)
let 今の数字が3の倍数だった = (今の数字 % 3 == 0)
let 今の数字に3がついていた = (今の数字.ToString().IndexOf("3") >= 0)
let 今アホになる = 今の数字が3の倍数だった || 今の数字に3がついていた
let 今気持ちよくなる = (今の数字 % 8 == 0)
select (今アホになる ? "アホ" : "") +
(今気持ちよくなる ? "アハン" : "") +
(!今アホになる && !今気持ちよくなる ? 今の数字.ToString() : "");
foreach (var value in 読み上げるリスト)
{
Console.WriteLine(value);
}
Console.ReadKey();

Share