閑古鳥

オールドプログラマの日記。プログラミングとか病気(透析)の話とか。

LINQでFizzBuzz

超既出でしょうけれども気にせずに。自宅ノートがWindowsになりC#3.0が気軽に触れるようになったので、LINQも少しは覚えておこうかと、FizzBuzzを書いてみました。仕事ではまだまだC#2.0なので実践する機会は当分無さそうではありますが……。

今回は上記のページを読んだ直後だったので、適当に真似してみました。FizzBuzzを返すリストを作ります。

var fizzbuzz = Enumerable.Range(1, 100).Select(s =>
    s % 15 == 0 ? "FizzBuzz" :
    s % 5 == 0 ? "Buzz" :
    s % 3 == 0 ? "Fizz" :
    s.ToString());

// 適当に出力
foreach (string text in fizzbuzz)
{
    Console.WriteLine(text);
}

結構短く書けるものですね。なかなか楽しいです。