Pisanie FizzBuzz

Czytając horror kodowania, natknąłem się na FizzBuzz innym razem.

Oryginalny post jest tutaj:Coding Horror: Dlaczego programiści nie mogą ... Programować?

Dla tych, którzy nie wiedzą: FizzBuzz to dość popularna gra dla dzieci. Licząc od 1 do 100, a za każdym razem liczba jest podzielna przez 3 wywołując „Fizz”, za każdym razem, gdy liczba jest podzielna przez 5, wywołując „Buzz” i za każdym razem, gdy liczba jest podzielna przez 3 i 5, dzwoniąc „FizzBuzz zamiast numer

Ale tym razem zacząłem kodować. To była praca na minutę, ale jest kilka rzeczy, których nie lubię.

Oto mój kod

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);
    }
}

Moje pytania to:

Jak pozbyć się znalezionego boolu?Czy istnieje lepszy sposób testowania niż foreach?

questionAnswers(30)

yourAnswerToTheQuestion