# FizzBuzz Solution Dumping Ground

**URL:** <https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752>\
**Category:** uncategorized\
**Created:** [April 12, 2014, 12:16am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752 "2014-04-12T00:16:39Z")\
**Posts on this page:** 20\
**Page:** 9

<div class="post-metadata">

**Author:** ![TonyK](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/t/4491bb/32.png) [@TonyK](https://discourse.codinghorror.com/u/TonyK)\
**Post date:** [June 30, 2010, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/161 "2010-06-30T00:00:00Z")

</div>

Doing it in php, the other way

\<?php for($i=1;$i\<=100;$i++){ switch($i){ case($i%3===0 && ($i%5)!==0): echo "Fizz"."  
"; break; case($i%5===0 && ($i%3)!==0): echo "Buzz"."  
"; break; case($i%5===0 && $i%3===0): echo "FizzBuzz"."  
"; break; default: echo $i."  
"; } } ?\>

---

<div class="post-metadata">

**Author:** ![Jonalberghini](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/j/6a8cbe/32.png) [@Jonalberghini](https://discourse.codinghorror.com/u/Jonalberghini)\
**Post date:** [June 30, 2010, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/162 "2010-06-30T00:00:00Z")

</div>

string strTemp = “”;  
for (int i = 1; i \<= 100; ++i, strTemp = “”)  
{  
strTemp = ((((i % 3) == 0) ? “Fizz” : “”) + (((i % 5) == 0) ? “Buzz” : “”));  
Console.WriteLine(((strTemp.Length == 0) ? i.ToString() : strTemp));  
}  
Console.ReadKey();

---

<div class="post-metadata">

**Author:** ![MissingnoG](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/m/f4b2a3/32.png) [@MissingnoG](https://discourse.codinghorror.com/u/MissingnoG)\
**Post date:** [July 19, 2010, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/163 "2010-07-19T00:00:00Z")

</div>

No love at all for Brainfuck here?

> ++++++++++[\<++++++++++\>-]\<[\>+\>[-]\>++++++++++[\<++++++++++\>-]\<+\<\<[-\>\>-\>+\<\<\<]\>\>\>  
> [-\<\<\<+\>\>\>]\<\>\>+++\<\<[-\>+\>-[\>+\>\>]\>[+[-\<+\>]\>+\>\>]\<\<\<\<\<\<]\>[-\<+\>]+\>[-]\>[\<\<-\>\>[-]]\>[-]  
> \<\<\<[[-]++++++++++[\>++++++++++\<-]\>++.+++.[-]\<[-]+++++++++++[\>+++++++++++\<-]\>+…  
> [-]\<[-]\<\<[-]\>\>]\<\>\>+++++\<\<[-\>+\>-[\>+\>\>]\>[+[-\<+\>]\>+\>\>]\<\<\<\<\<\<]\>[-\<+\>]+\>[-]\>[\<\<-\>\>[  
> -]]\>[-]\<\<\<[[-]+++++++++[\>+++++++++++\<-]\>-.[-]\<[-]+++++++++[\>+++++++++++++\<-]\>.  
> +++++…[-]\<[-]\<\<[-]\>\>]\<\<[[-]\>\>++++++++++\<[-\>-[\>+\>\>]\>[+[-\<+\>]\>+\>\>]\<\<\<\<\<]\>[-]\>\>[  
> ++++++++[\<++++++\>-]\<.[-]]\<\>++++++++[\<++++++\>-]\<.[-]\<\<\<]\>[-]++++++++++.[-]\<[-]  
> \<-]

---

<div class="post-metadata">

**Author:** ![KevinR](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/k/da6949/32.png) [@KevinR](https://discourse.codinghorror.com/u/KevinR)\
**Post date:** [August 20, 2010, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/164 "2010-08-20T00:00:00Z")

</div>

**Only 162 bytes assembled!**

;

---

<div class="post-metadata">

**Author:** ![AlekseyT](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/a/47e85d/32.png) [@AlekseyT](https://discourse.codinghorror.com/u/AlekseyT)\
**Post date:** [September 6, 2010, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/166 "2010-09-06T00:00:00Z")

</div>

This is my version (the batch file for XP cmd):  
::===================FizzBuzz.cmd========================  
@echo off  
for /l %%i in (1,1,100) do call :output %%i  
goto :end

:output  
set OUT=%1  
set /A T=%1%%3  
if [%T%]==[0] set OUT=Fizz  
set /A T=%1%%5  
if not [%T%]==[0] goto :out2  
if not [%OUT%]==[Fizz] set OUT=  
set OUT=%OUT%Buzz  
:out2  
echo %OUT%  
:end  
::==============================================

---

<div class="post-metadata">

**Author:** ![Dangrsmind](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/d/fbc32d/32.png) [@Dangrsmind](https://discourse.codinghorror.com/u/Dangrsmind)\
**Post date:** [September 16, 2010, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/167 "2010-09-16T00:00:00Z")

</div>

Mathematica:

GCD[#, 15] /. {3 -\> Fizz, 5 -\> Buzz, 15 -\> FizzBuzz, \_ -\> #} & /@ Range[100]

---

<div class="post-metadata">

**Author:** ![shezi\_sheli](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/s/aeb1de/32.png) [@shezi\_sheli](https://discourse.codinghorror.com/u/shezi_sheli)\
**Post date:** [October 23, 2010, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/168 "2010-10-23T00:00:00Z")

</div>

I am a 10th grader from pakistan and my answer to the FizzBuzz question is following:  
For A=1 to 100  
B=A/3  
B=B+1  
Repeat  
B=B-1  
Until B\<=1 and B\>0  
C=A/5  
C=C+1  
Repeat  
C=C-1  
Until C\<=1 and C\>0  
If B=1 and C=1 then  
Write [“FizzBuzz”]  
End If  
If B=1 and C\<1 then  
Write [“Fizz”]  
End If  
If C=1 and B\<1 then  
Write [“Buzz”]  
End If  
If B\<1 and C\<1 then  
Output A  
End If  
Next A

---

<div class="post-metadata">

**Author:** ![Rich\_Mellor](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/r/76d3ee/32.png) [@Rich\_Mellor](https://discourse.codinghorror.com/u/Rich_Mellor)\
**Post date:** [November 2, 2010, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/169 "2010-11-02T00:00:00Z")

</div>

I guess I was brought up learning to program on Sinclairs - amazing how you can learn BASIC as a simple language and then move onto other languages, such as Perl, PHP and even 68000 machine code…

Fizzbuzz:  
Sinclair QL SuperBASIC

10 FOR i=1 TO 100  
20 PRINT i;’ ';  
30 IF (i mod 3)=0:PRINT "FIZZ"  
40 IF (i mod 5)=0:PRINT "BUZZ"  
50 PRINT  
60 END FOR i

68000 Assembly Language (on the QL):  
start MOVEQ #-1,D1 ;Open a screen channel  
LEA screen,A0  
MOVEQ #2,D3  
MOVEQ #1,D0  
TRAP #3 ;Uses built in ROM routine to open screen  
BNE.S end  
MOVEQ #1,D6 ;Initial Loop value  
loop MOVE.L (A6),A1  
LEA 2(A1),A0  
MOVE.W D6,0(A6.A1.L) ;store value on stack

```
       MOVE.L D6,D7
       DIVU #3,D7
       SWAP D7
       CMPI.W #0,D7
       BEQ.S testbuzz
       LEA fizz,A1
       MOVE.W $D0,A2
       JSR (A2)

```

testbuzz MOVE.L D6,D7  
DIVU #5,D7  
SWAP D7  
CMPI.W #0,D7  
BEQ.S nwline  
LEA buzz,A1  
MOVE.W $D0,A2  
JSR (A2)  
nwline MOVEQ #10,D1 ;Print a new line  
BSR.S printchr  
CMPI.B #100,D6  
BEQ.S end  
ADDQ.B #1,D6  
BRA.S loop  
end MOVEQ #0,D0  
RTS  
printchr MOVEQ #-1,D3  
MOVEQ #5,D0  
TRAP #3  
MOVEQ #0,D0  
RTS  
digits ds.b 6  
screen DC.W 17  
DC.B ‘con\_448x200a32x16’,0  
fizz DC.W #4  
DC.B 'FIZZ’  
buzz DC.W #4  
DC.B ‘BUZZ’

---

<div class="post-metadata">

**Author:** ![Rich\_Mellor](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/r/76d3ee/32.png) [@Rich\_Mellor](https://discourse.codinghorror.com/u/Rich_Mellor)\
**Post date:** [November 2, 2010, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/170 "2010-11-02T00:00:00Z")

</div>

Sorry - made an error when typing the 68000 assembly language in - I hit a key which submitted the form!

start MOVEQ #-1,D1 ;Open a screen channel  
LEA screen,A0  
MOVEQ #2,D3  
MOVEQ #1,D0  
TRAP #3 ;Uses built in ROM routine to open screen  
BNE.S end  
MOVEQ #6,D1  
MOVE.L A1,$58(A6) ; make room on maths stack for 6 bytes  
MOVE.W $11A,A2  
JSR (A2)  
MOVE.L $58(A6),A1  
MOVEQ #1,D6 ;Initial Loop value  
loop MOVE.L (A6),A1  
LEA 2(A1),A0  
MOVE.W D6,0(A6.A1.L) ;store value on stack  
MOVE.W $F2,A2  
JSR (A2) ;convert number to ASCII  
MOVE.W D1,D2 ; grab length of number  
MOVEQ #7,D0  
MOVEQ #-1,D3  
TRAP #3  
MOVE.L D6,D7  
DIVU #3,D7  
SWAP D7  
CMPI.W #0,D7  
BEQ.S testbuzz  
LEA fizz,A1  
MOVE.W $D0,A2 ; print string  
JSR (A2)  
testbuzz MOVE.L D6,D7  
DIVU #5,D7  
SWAP D7  
CMPI.W #0,D7  
BEQ.S nwline  
LEA buzz,A1  
MOVE.W $D0,A2  
JSR (A2)  
nwline MOVEQ #10,D1 ;Print a new line  
BSR.S printchr  
CMPI.B #100,D6  
BEQ.S end  
ADDQ.B #1,D6  
BRA.S loop  
end MOVEQ #0,D0  
RTS  
printchr MOVEQ #-1,D3  
MOVEQ #5,D0  
TRAP #3  
MOVEQ #0,D0  
RTS  
screen DC.W 17  
DC.B ‘con\_448x200a32x16’,0  
fizz DC.W #4  
DC.B 'FIZZ’  
buzz DC.W #4  
DC.B ‘BUZZ’

Rich Mellor  
[http://www.sellmyretro.com](http://www.sellmyretro.com)

---

<div class="post-metadata">

**Author:** ![MaximeD](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/m/9dc877/32.png) [@MaximeD](https://discourse.codinghorror.com/u/MaximeD)\
**Post date:** [November 24, 2010, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/171 "2010-11-24T00:00:00Z")

</div>

I failed my intro to computer science course where they taught me java. It’s been over six months. I dont have java installed any more but here’s what I did in my text editor in 5 minutes.

public class NewClass{  
public static void main(String[] args){  
int i = 1;  
while (i \<= 100){  
if (i % 15 == 0){  
System.out.println(“FizzBuzz”);  
}else if (1 % 5 == 0){  
System.out.println(“Buzz”);  
}else if (1 % 3 == 0){  
System.out.println(“Fizz”);  
}else{  
System.out.println(i + “”);  
}  
}  
}  
}

I dont have java so I cant test it but im pretty sure i have it or am close. This is just to prove that that 199/200 thing is serious bullshit.

---

<div class="post-metadata">

**Author:** ![Baig001](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/b/e495f1/32.png) [@Baig001](https://discourse.codinghorror.com/u/Baig001)\
**Post date:** [January 4, 2011, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/172 "2011-01-04T00:00:00Z")

</div>

HI guys.  
As a student, I feel that the teachers spend a lot of time giving us long long pages of things to put together rather than spending enough time on getting concrete sets of knowledge together-I’ll work on that this year.  
My solution uses java-bugger using C and pointers and all that.  
Now, I am intending to code for the following:  
-print out numbers from 1 to 100 inclusive  
-however, numbers that are divisible by 3, get repalced by Fizz, those with 5 get replaced by Buzz, and those that are divisible by both 3 and 5 (i.e by 15) get replaced by FizzBuzz.  
I hope my code does what is required:  
public class Main {

```
   public static void main(String[] args) {
     for (int i=1; i<=100; i++){
      if (i%15==0){
          System.out.println("FizzBuzz");
      }else if(i%3==0){
          System.out.println("Fizz");
      }else if(i%5==0){
          System.out.println("Buzz");
      }else{
          System.out.println(i);
      }
  }

}

```

}

---

<div class="post-metadata">

**Author:** ![Transio](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/t/7ab992/32.png) [@Transio](https://discourse.codinghorror.com/u/Transio)\
**Post date:** [March 19, 2011, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/173 "2011-03-19T00:00:00Z")

</div>

In 4 lines, with PHP

for ($i = 1; $i \<= 100; $i++) {  
$fizzbuzz = ($i % 3 == 0 ? “Fizz” : “”).($i % 5 == 0 ? “Buzz” : “”);  
echo strlen($fizzbuzz) ? $fizzbuzz : $i;  
}

---

<div class="post-metadata">

**Author:** ![Eric\_Guinn](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/e/c37758/32.png) [@Eric\_Guinn](https://discourse.codinghorror.com/u/Eric_Guinn)\
**Post date:** [April 7, 2011, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/174 "2011-04-07T00:00:00Z")

</div>

Java? Java.

for (int i = 1; i \<= 100; i ++)  
{  
String Mult3 = i % 3 == 0 ? “Fizz” : “”;  
String Mult5 = i % 5 == 0 ? “Buzz” : “”;

System.out.println(i + " " + M3 + M5);  
}

I like Java…

---

<div class="post-metadata">

**Author:** ![Nikhilgotmail](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/n/82dd89/32.png) [@Nikhilgotmail](https://discourse.codinghorror.com/u/Nikhilgotmail)\
**Post date:** [April 16, 2011, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/175 "2011-04-16T00:00:00Z")

</div>

for(i=1;i\<=100;i++){  
console.log((i%5 == 0 && i%3 == 0 && “FizzBuzz”) || (i%5 == 0 && “Buzz”) || (i%3 == 0 && “Fizz”) || i);  
}

This is how I’d do it in JS

---

<div class="post-metadata">

**Author:** ![wwwg](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/w/ea666f/32.png) [@wwwg](https://discourse.codinghorror.com/u/wwwg)\
**Post date:** [May 11, 2011, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/176 "2011-05-11T00:00:00Z")

</div>

I don’t think this article can be completely correct more so the comments being thrown around. I’m currently in college as a Computer Science major and I had to learn recursion way back in beginning programming class. It was just the hey this is what it is and how you can do it. Since I’ve taken the more advanced classes now. We have to use it in some of the solutions such as Traversing Tree’s or graphs usually. I also learned Hexadecimal and Binary conversions and the operations on them.

Also I would say that my University not the best at all as far University go. It’s one of the cheapest in the state.  
Java -  
Console run by -  
javac FizzBuzz.java  
java FizzBuzz  
public class FizzBuzz  
{  
public FizzBuzz()  
{  
}  
public static void main(String[] args)  
{  
for(int i = 1; i\<= 100; i++)  
{  
if( (i % 3) == 0 && (i % 5) == 0 )  
System.out.println(“FizzBuzz”);  
else if(i % 5 == 0)  
System.out.println(“Buzz”);  
else if(i % 3 == 0)  
System.out.println(“Fizz”);  
else  
System.out.println(i);  
}  
}  
}

---

<div class="post-metadata">

**Author:** ![Pablo\_Negri](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/p/e5b9ba/32.png) [@Pablo\_Negri](https://discourse.codinghorror.com/u/Pablo_Negri)\
**Post date:** [August 2, 2011, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/177 "2011-08-02T00:00:00Z")

</div>

In C :  
#include \<stdio.h\>

int main()  
{  
int i=1;  
for(i; i\<=100;i++)  
{  
if(i%3==0)  
{printf(“FIZZ”);  
}if(i%5==0)  
{printf(“BUZZ”);  
}if(i%3!=0 && i%5!=0)  
{printf("%d\n", i);  
}else{printf("\n");  
}  
}  
return 0;  
}

---

<div class="post-metadata">

**Author:** ![D11109](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/d/b2d939/32.png) [@D11109](https://discourse.codinghorror.com/u/D11109)\
**Post date:** [August 17, 2011, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/178 "2011-08-17T00:00:00Z")

</div>

perl -le’print$_%15?$_%5?$_%3?$_:fizz:buzz:fizzbuzz for 1…100’

---

<div class="post-metadata">

**Author:** ![Dave\_Pease](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/d/ecc23a/32.png) [@Dave\_Pease](https://discourse.codinghorror.com/u/Dave_Pease)\
**Post date:** [August 26, 2011, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/179 "2011-08-26T00:00:00Z")

</div>

C# LinqPad Program:  
void Main()  
{  
IEnumerable nums = Enumerable.Range(1, 100);  
foreach( int i in nums)  
{  
string result = (i % 3 == 0) ? “Fizz” : (i % 5 == 0) ? “Buzz” : i.ToString();   
result.Dump();  
}  
}

---

<div class="post-metadata">

**Author:** ![Manjoor\_Ali](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/m/977dab/32.png) [@Manjoor\_Ali](https://discourse.codinghorror.com/u/Manjoor_Ali)\
**Post date:** [September 14, 2011, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/180 "2011-09-14T00:00:00Z")

</div>

in C# i can write it in just 2 lines

for (int i = 1; i \<= 100; i++)  
Console.WriteLine(i.ToString() + " : " + (((i % 3 == 0) && (i % 5 == 0)) ? “FizzBuzz” : (i % 3 == 0 ? “Fizz” : (i % 5 == 0 ? “Buzz”:i.ToString()))));

---

<div class="post-metadata">

**Author:** ![JeffL](https://discourse-cdn.codinghorror.com/letter_avatar_proxy/v2/letter/j/ea666f/32.png) [@JeffL](https://discourse.codinghorror.com/u/JeffL)\
**Post date:** [September 23, 2011, 12:00am UTC](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752/181 "2011-09-23T00:00:00Z")

</div>

My C# version

foreach(var i in Enumerable.Range(1,100).Select(i =\> (i % 15 == 0) ? “FizzBuzz” : (i % 3) == 0 ? “Fizz” : (i % 5) == 0 ? “Buzz” : i.ToString()))  
{  
Console.Write(i);  
}  
Console.WriteLine();

Or LINQ

var s = from i in Enumerable.Range(1, 100)  
select new  
{  
value = (i % 15 == 0) ? “FizzBuzz” : (i % 3) == 0 ? “Fizz” : (i % 5) == 0 ? “Buzz” : i.ToString()  
};  
foreach(var i in s) System.Console.Write(i.value);  
Console.WriteLine();

[Previous page](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752.md?page=8)

[Next page](https://discourse.codinghorror.com/t/fizzbuzz-solution-dumping-ground/1752.md?page=10)
