Writing FizzBuzz

后端 未结 30 2152
庸人自扰
庸人自扰 2020-12-04 08:50

Reading the coding horror, I just came across the FizzBuzz another time.

The original post is here: Coding Horror: Why Can\'t Programmers.. Program?

For thos

30条回答
  •  囚心锁ツ
    2020-12-04 09:19

    This my effort mixing Func with IEnumerable

     class Program
    {
        static void Main(string[] args)
        {
            foreach (var i in FizzBuzz(100))
            {
                Console.WriteLine(i);
            }
        }
    
        private static IEnumerable FizzBuzz(int maxvalue)
        {
            int count = 0;
            //yield return count.ToString();
            Func FizzBuzz = (x) => ((x % 5 == 0 && x % 3 == 0) ? "FizzBuzz" : null);
            Func Buzz = (x) => ((x % 5 == 0) ? "Buzz" : null);
            Func Fizz = (x) => ((x % 3 == 0) ? "Fizz" : null);
            Func Number = (x) => x.ToString();
    
            while (count < maxvalue)
            {
                count++;
    
                yield return FizzBuzz(count) ?? Buzz(count) ?? Fizz(count) ?? Number(count);
            }
        }
    }
    

提交回复
热议问题