2018-04-06T15:39:36.000+09:00

C# で雑にFizzBuzz

プログラミング学び直しシリーズ。FizzBuzzをC#で愚直に書く。

class MainClass
{

    public static void Main(string[] args)
    {
        foreach (int i in Enumerable.Range(1, 100))
        {
            Console.WriteLine(fizzBuzz(i));
        }
    }

    static string fizzBuzz(int x)
    {
        StringBuilder b = new StringBuilder();

        if (fizz(x)) b.Append("Fizz");
        if (buzz(x)) b.Append("Buzz");
        if (b.Length == 0) b.Append(x);

        return b.ToString();
    }

    static bool fizz(int x)
    {
        return x % 3 == 0;
    }

    static bool buzz(int x)
    {
        return x % 5 == 0;
    }

}

ひと目見ただけで何が起きてるのか理解するのはこれくらいが良さそうだけど、もっとスマートな書き方をあとで考えてみよう。