326e4b379fafa37c9483d6f8e8eb9826

Let the battle begin!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
using System;

namespace FizzBuzz
{
    class Program
    {
        static void Main(string[] args)
        {

            for (int i = 1; i < 101; i++)
                Console.WriteLine(string.Format("{0}{1}{2}",
                     i % 3 != 0 && i % 5 != 0 ? i.ToString() : "", i % 3 == 0 ? "Fizz" : "", i % 5 == 0 ? "Buzz" : ""));
            Console.ReadKey();
        }
    }
}

Refactorings

No refactoring yet !

382b0f5185773fa0f67a8ed8056c7759

Hyru

October 24, 2007, October 24, 2007 16:42, permalink

6 ratings. Login to rate!

Easier to read and less CPU/Memory usage. There's a trinary set of possible outcomes so using the string "FizzBuzz" yields the same result. If this is for school, you might want to make sure concatenating Fizz and Buzz is acceptable.

1
2
3
4
5
6
7
8
9
for ( int i = 1; i < 101; i++ )
     Console.WriteLine(

          i % 3 != 0 && i % 5 != 0 ? i.ToString() :
          i % 3 == 0 ? i % 5 == 0 ? "FizzBuzz" : "Fizz" : "Buzz"

     );

Console.ReadKey();
4e09d94862e768c84561ab00e9e6b9d7

steve

October 24, 2007, October 24, 2007 18:12, permalink

6 ratings. Login to rate!
1
2
3
4
5
6
7
8
9
for ( int i = 1; i < 101; i++ )
     Console.WriteLine(

          i % 3 != 0 && i % 5 != 0 ? i.ToString() :
          (i % 3 == 0 ? "Fizz" : "")+(i % 3 == 0 ? "Bizz" : "")

     );

Console.ReadKey();
D4dc00d8e6563752ccff3e8a61b8688d

Dave

October 26, 2007, October 26, 2007 21:23, permalink

6 ratings. Login to rate!

What should this be optimized for?
Speed of execution? Readability?

How about this?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
int mod15 = 0;

for ( int i = 1; i < 101; i++ ) {
     
     switch(++mod15) {
         case 15:
             Console.WriteLine("FizzBuzz");
             mod15 = 0;
             break;
         case 3:
         case 6:
         case 9:
             Console.WriteLine("Fizz");
             break;
         case 5:
         case 10:
             Console.WriteLine("Buzz");
             break;
         default:
             Console.WriteLine(i);
             break;

     }  

}

Console.ReadKey();
1000000dfc87b366f0ea32e05d8b86c5

Mark Lindell

December 11, 2007, December 11, 2007 18:18, permalink

6 ratings. Login to rate!
1
2
3
(from n in Enumerable.Range(1, 100)
where (n % 3) == 1 || (n % 2) == 1
select n.ToString() + "=" + (((n % 2) == 1) ? "Fizz" : "") + (((n % 3) == 1) ? "Buzz" : "")).ToList().ForEach(Console.WriteLine);
Ff71c4381eaf3816bffda6c6fe53d33e

Kalpesh

December 17, 2007, December 17, 2007 17:41, permalink

6 ratings. Login to rate!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
static string fizz(int i)
{
	if (i % 3 == 0)
		return "Fizz";
		
	return string.Empty;
}

static string Buzz(int i)
{
	if (i % 5 == 0)
		return "Buzz";
		
	return string.Empty;
}

for (int i = 1; i < 101; i++)
{
	string fizzbuzz = fizz(i) + Buzz(i);
	Console.WriteLine(fizzbuzz == string.Empty ? i.ToString() : fizzbuzz);
}
44156e6261e262d2dc18dab400d12f30

pho

March 25, 2008, March 25, 2008 20:06, permalink

4 ratings. Login to rate!

version with extension method and oneline fizzbuzz calculation

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public static class ExtensionMethods
{
    public static string FizzBuzz(this int i)
    {
        return (i % 3 == 0 && i % 5 == 0) ? "FizzBuzz" : (i % 3 == 0) ? "Fizz" : (i % 5 == 0) ? "Buzz" : i.ToString();
    }
}

class Program
{
    static void Main(string[] args)
    {
        for (int i = 1; i <= 100; i++) Console.WriteLine(i.FizzBuzz());
        Console.ReadLine();
    }
}
Avatar

David H

June 22, 2008, June 22, 2008 22:54, permalink

2 ratings. Login to rate!

Can't take credit for this but it's the cleanest solution I've seen.

1
2
3
4
5
6
7
8
String output; 
        for (int i=1;i<=100;i++)
        {
            output = (i % 3 == 0) ? "Fizz" : ""; 
            output = (i % 5 == 0) ? output + "Buzz" : output; 
            if (output.Equals("")) output = i.ToString();
            Response.Write(output + "<br />"); 
        }
Acad2552784135c09b17c00853f5a6f8

dcadenas.blogspot.com

July 16, 2008, July 16, 2008 02:04, permalink

1 rating. Login to rate!
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
    static class ExtensionsMethods
    {
        public static bool IsMultipleOf(this int number, int num)
        {
            return number % num == 0;
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            for (int i = 1; i <= 100; i++)
                Console.WriteLine(FizzBuzzify(i));

            Console.ReadKey();
        }

        static string FizzBuzzify(int i)
        {
            if (i.IsMultipleOf(3) && i.IsMultipleOf(5))
                return "FizzBuzz";

            if (i.IsMultipleOf(3))
                return "Fizz";

            if (i.IsMultipleOf(5))
                return "Buzz";

            return i.ToString();
        }
    }
729442eea8d8548842a6e0947e333c7b

Chris Jester-Young

July 16, 2008, July 16, 2008 10:20, permalink

1 rating. Login to rate!

Implementation in Perl. :-P

(Le sigh, some people just have no sense of humour. Marking my submission as spam? You've got to be kidding me, it's a valid FizzBuzz program after all.)

FizzBuzz in Perl

1
2
3
4
5
6
7
my %fbmap = (3 => 'Fizz', 5 => 'Buzz');
my $fizzbuzz = sub {
    my $num = $_;
    join('', map {$num % $_ ? '' : $fbmap{$_}} keys %fbmap) || $num;
};

print "@{[map &$fizzbuzz, 1..100]}\n";
861f311cc4a077c439099d0e5d251e73

Wolfbyte

July 17, 2008, July 17, 2008 01:40, permalink

2 ratings. Login to rate!

I can't resist posting the wonder that is Enterprise FizzBuzz http://code.google.com/p/fizzbuzz

Here is a sample portion.

FizzBuzzLogic.cs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
        /// <summary>
        /// Creates the transform.
        /// </summary>
        /// <returns>The Transform to apply to each number. This is really the FizzBuzz Operation.</returns>
        public ITransformer CreateTransformer()
        {
            return new CoalescingTransformer(
                        new ConcatenatingTransformer(
                            new PredicatedTransformer(
                                delegate(int i) { return i % 3 == 0; },
                                new StaticMessageTransformer("Fizz"),
                                new NullTransformer()),
                            new PredicatedTransformer(
                                delegate(int i) { return i % 5 == 0; },
                                new StaticMessageTransformer("Buzz"),
                                new NullTransformer())),
                        new IdentityTransformer());
        }
729442eea8d8548842a6e0947e333c7b

Chris Jester-Young

July 18, 2008, July 18, 2008 01:45, permalink

No rating. Login to rate!

@Wolfbyte: Haha, nice. Very enterprisey, probably suitable for the next OMGWTF contest. :-P (That's http://omg.thedailywtf.com/ for the lurkers.)

Your refactoring





Format Copy from initial code

or Cancel