相关疑难解决方法(0)

写FizzBu​​zz

阅读编码恐怖,我刚刚遇到了FizzBu​​zz.

原帖是在这里:编码恐怖:为什么程序员不能..程序?

对于那些不知道的人:FizzBu​​zz是一款非常受欢迎的儿童游戏.从1到100计数,每次一个数字可以被3调用"Fizz"整除,每次一个数字可以被5调整为"Buzz",并且每次数字可以被3和5整除时,调用"FizzBu​​zz而不是数

但这一次,我刚刚开始编码.这是一分钟的工作,但有几件我不喜欢的事情.

这是我的代码

public void DoFizzBuzz()
{
    var combinations = new Tuple<int, string>[] 
    { 
        new Tuple<int, string> (3, "Fizz"), 
        new Tuple<int, string> (5, "Buzz"), 
    };

    for (int i = 1; i <= 100; ++i)
    {
        bool found = false;

        foreach (var comb in combinations)
        {
            if (i % comb.Item1 == 0)
            {
                found = true;
                Console.Write(comb.Item2);
            }
        }

        if (!found)
        {
            Console.Write(i);
        }

        Console.Write(Environment.NewLine);
    }
}
Run Code Online (Sandbox Code Playgroud)

所以我的问题是:

  1. 如何摆脱bool发现?
  2. 有没有比foreach更好的测试方法?

c# optimization fizzbuzz

22
推荐指数
10
解决办法
7万
查看次数

标签 统计

c# ×1

fizzbuzz ×1

optimization ×1