fizzbuzz.md
Python script, ASCII text executable, with very long lines (570)
title: The FizzBuzz Program date: 2022 Feb 20 updated: 2024 Feb 2 --- A FizzBuzz Program is a program used in many job interviews to see if a programmer is good at problem solving. There are many ways to make one.
First let me tell you why I write these programs. These programs, at least in my opinion, are good when you're learning a new programming language. It gives you a problem to solve, and all you need to do to solve it. Incase you're wondering, the problem is to make a program that counts from 1 to 100 and replaces all multiples of 3 with Fizz, all multiples of 5 with Buzz, and multiples of both with FizzBuzz. Generally in interviews, they also ask you to add on more multiples, such as multiples of 7 are replaced with Fuzz, and multiples of 11 are replaced with Bizz.
Now that I've told you what a FizzBuzz Program is, let me show you how I make them in Python.
for Index in range(1, 100): Response = "" print(Response)
The first thing I do is I create a for loop, and within it I put a print statement and a variable named toPrint.
def FizzCompute(Number, Divisor, String): return String if Number % Divisor == 0 else "" def SubstituteEmpty(String, Number): return String if String != "" else Number for Index in range(1, 100): Response = SubstituteEmpty(FizzCompute(Index, 3, "Fizz") + FizzCompute(Index, 5, "Buzz"), Index) print(Response)
1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz 16 17 Fizz 19 Buzz Fizz 22 23 Fizz Buzz 26 Fizz 28 29 FizzBuzz 31 32 Fizz 34 Buzz Fizz 37 38 Fizz Buzz 41 Fizz 43 44 FizzBuzz 46 47 Fizz 49 Buzz Fizz 52 53 Fizz Buzz 56 Fizz 58 59 FizzBuzz 61 62 Fizz 64 Buzz Fizz 67 68 Fizz Buzz 71 Fizz 73 74 FizzBuzz 76 77 Fizz 79 Buzz Fizz 82 83 Fizz Buzz 86 Fizz 88 89 FizzBuzz 91 92 Fizz 94 Buzz Fizz 97 98 Fizz
The next thing I do is I define a function that checks if one number is a multiple of another, and if it is, then it returns the string, otherwise, it returns an empty string.
Then I make a function that checks if a string is an empty one, if it is, then it returns a number.
Once I have these 2 functions, I go back into the for loop and make the Response variable have the variable for checking if a string is empty(and if it is replace it with a number) check if 2 of the other function that check if one number is a multiple of another(and if it is, return a string). Finally, it prints the output.
I've tried this method many times. Below are some examples of this method in action!
1
---
2
title: The FizzBuzz Program
3
date: 2022 Feb 20
4
updated: 2024 Feb 2
5
---
6
A FizzBuzz Program is a program used in many job interviews to see if a programmer is good at problem solving. There are many ways to make one.
7
8
First let me tell you why I write these programs. These programs, at least in my opinion, are good when you're learning a new programming language. It gives you a problem to solve, and all you need to do to solve it. Incase you're wondering, the problem is to make a program that counts from 1 to 100 and replaces all multiples of 3 with Fizz, all multiples of 5 with Buzz, and multiples of both with FizzBuzz. Generally in interviews, they also ask you to add on more multiples, such as multiples of 7 are replaced with Fuzz, and multiples of 11 are replaced with Bizz.
9
10
Now that I've told you what a FizzBuzz Program is, let me show you how I make them in Python.
11
12
```python
13
for Index in range(1, 100):
14
Response = ""
15
print(Response)
16
```
17
18
The first thing I do is I create a for loop, and within it I put a print statement and a variable named toPrint.
19
20
```python
21
def FizzCompute(Number, Divisor, String):
22
return String if Number % Divisor == 0 else ""
23
24
def SubstituteEmpty(String, Number):
25
return String if String != "" else Number
26
27
for Index in range(1, 100):
28
Response = SubstituteEmpty(FizzCompute(Index, 3, "Fizz") + FizzCompute(Index, 5, "Buzz"), Index)
29
print(Response)
30
```
31
<details>
32
<summary>Output</summary>
33
```
34
1
35
2
36
Fizz
37
4
38
Buzz
39
Fizz
40
7
41
8
42
Fizz
43
Buzz
44
11
45
Fizz
46
13
47
14
48
FizzBuzz
49
16
50
17
51
Fizz
52
19
53
Buzz
54
Fizz
55
22
56
23
57
Fizz
58
Buzz
59
26
60
Fizz
61
28
62
29
63
FizzBuzz
64
31
65
32
66
Fizz
67
34
68
Buzz
69
Fizz
70
37
71
38
72
Fizz
73
Buzz
74
41
75
Fizz
76
43
77
44
78
FizzBuzz
79
46
80
47
81
Fizz
82
49
83
Buzz
84
Fizz
85
52
86
53
87
Fizz
88
Buzz
89
56
90
Fizz
91
58
92
59
93
FizzBuzz
94
61
95
62
96
Fizz
97
64
98
Buzz
99
Fizz
100
67
101
68
102
Fizz
103
Buzz
104
71
105
Fizz
106
73
107
74
108
FizzBuzz
109
76
110
77
111
Fizz
112
79
113
Buzz
114
Fizz
115
82
116
83
117
Fizz
118
Buzz
119
86
120
Fizz
121
88
122
89
123
FizzBuzz
124
91
125
92
126
Fizz
127
94
128
Buzz
129
Fizz
130
97
131
98
132
Fizz
133
```
134
</details>
135
136
The next thing I do is I define a function that checks if one number is a multiple of another, and if it is, then it returns the string, otherwise, it returns an empty string.
137
138
Then I make a function that checks if a string is an empty one, if it is, then it returns a number.
139
140
Once I have these 2 functions, I go back into the for loop and make the `Response` variable have the variable for checking if a string is empty(and if it is replace it with a number) check if 2 of the other function that check if one number is a multiple of another(and if it is, return a string). Finally, it prints the output.
141
142
I've tried this method many times. Below are some examples of this method in action!
143
144
* [Kotlin](https://replit.com/@StevesGreatness/FizzBuzzKotlin)
145
* [Lua](https://replit.com/@StevesGreatness/FizzBuzzlua)
146
* [Python](https://replit.com/@StevesGreatness/FizzBuzzpython)
147
* [Ruby](https://replit.com/@StevesGreatness/FizzBuzzRuby)