# Fizz Buzz Implementation

Given an integer n, for every integer i <= n, the task is to print “FizzBuzz” if i is divisible by 3 and 5, “Fizz” if i is divisible by 3, “Buzz” if i is divisible by 5 or i (as a string) if none of the conditions are true.

Example:

Input: n = 3
Output: [1 2 Fizz]

Input: n = 5
Output: [1 2 Fizz 4 Buzz]

Input: n = 20
Output: [1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz 16 17 Fizz 19 Buzz]

Approach:

Iterate on the given number from 1 to n, check its divisibility and add the string into result according to the given condition.

• Initialize an empty result list.
• Iterate on the given number from 1 to n
• For every number, if it is divisible by both 3 and 5, add FizzBuzz to the result list.
• Else, Check if the number is divisible by 3, add Fizz.
• Else, Check if the number is divisible by 5, add Buzz.
• Else, add the number by converting it to string.
• Print the result.

Below is the implementation of the above approach:

## C++

 `#include ` `using` `namespace` `std;`   `vector fizzBuzz(``int` `n)` `{` `    ``// Declare a vector of strings to store the results` `    ``vector result;`   `    ``// Loop from 1 to n (inclusive)` `    ``for` `(``int` `i = 1; i <= n; ++i) {`   `        ``// Check if i is divisible by both 3 and 5` `        ``if` `(i % 3 == 0 && i % 5 == 0) {`   `            ``// Add "FizzBuzz" to the result vector` `            ``result.push_back(``"FizzBuzz"``);` `        ``}`   `        ``// Check if i is divisible by 3` `        ``else` `if` `(i % 3 == 0) {`   `            ``// Add "Fizz" to the result vector` `            ``result.push_back(``"Fizz"``);` `        ``}`   `        ``// Check if i is divisible by 5` `        ``else` `if` `(i % 5 == 0) {`   `            ``// Add "Buzz" to the result vector` `            ``result.push_back(``"Buzz"``);` `        ``}` `        ``else` `{`   `            ``// Add the current number as a string to the` `            ``// result vector` `            ``result.push_back(to_string(i));` `        ``}` `    ``}`   `    ``// Return the result vector` `    ``return` `result;` `}`   `// Driver code` `int` `main()` `{` `    ``int` `n = 20;`   `    ``// Call the fizzBuzz function to get the result` `    ``vector result = fizzBuzz(n);`   `    ``// Print the result` `    ``for` `(``const` `string& s : result) {` `        ``cout << s << ``" "``;` `    ``}`   `    ``return` `0;` `}`

## Java

 `import` `java.util.ArrayList;` `import` `java.util.List;`   `public` `class` `FizzBuzz {` `    ``public` `static` `List fizzBuzz(``int` `n)` `    ``{` `        ``// Declare a list of strings to store the results` `        ``List result = ``new` `ArrayList<>();`   `        ``// Loop from 1 to n (inclusive)` `        ``for` `(``int` `i = ``1``; i <= n; ++i) {` `          `  `            ``// Check if i is divisible by both 3 and 5` `            ``if` `(i % ``3` `== ``0` `&& i % ``5` `== ``0``) {` `              `  `                ``// Add "FizzBuzz" to the result list` `                ``result.add(``"FizzBuzz"``);` `            ``}` `          `  `            ``// Check if i is divisible by 3` `            ``else` `if` `(i % ``3` `== ``0``) {` `              `  `                ``// Add "Fizz" to the result list` `                ``result.add(``"Fizz"``);` `            ``}` `          `  `            ``// Check if i is divisible by 5` `            ``else` `if` `(i % ``5` `== ``0``) {` `              `  `                ``// Add "Buzz" to the result list` `                ``result.add(``"Buzz"``);` `            ``}` `            ``else` `{` `              `  `                ``// Add the current number as a string to the` `                ``// result list` `                ``result.add(Integer.toString(i));` `            ``}` `        ``}`   `        ``// Return the result list` `        ``return` `result;` `    ``}`   `    ``public` `static` `void` `main(String[] args)` `    ``{` `        ``int` `n = ``20``;`   `        ``// Call the fizzBuzz function to get the result` `        ``List result = fizzBuzz(n);`   `        ``// Print the result` `        ``for` `(String s : result) {` `            ``System.out.print(s + ``" "``);` `        ``}` `    ``}` `}`

## Python

 `def` `fizz_buzz(n):` `    ``# Declare a list of strings to store the results` `    ``result ``=` `[]`   `    ``# Loop from 1 to n (inclusive)` `    ``for` `i ``in` `range``(``1``, n ``+` `1``):`   `        ``# Check if i is divisible by both 3 and 5` `        ``if` `i ``%` `3` `=``=` `0` `and` `i ``%` `5` `=``=` `0``:`   `            ``# Add "FizzBuzz" to the result list` `            ``result.append(``"FizzBuzz"``)`   `        ``# Check if i is divisible by 3` `        ``elif` `i ``%` `3` `=``=` `0``:`   `            ``# Add "Fizz" to the result list` `            ``result.append(``"Fizz"``)`   `        ``# Check if i is divisible by 5` `        ``elif` `i ``%` `5` `=``=` `0``:`   `            ``# Add "Buzz" to the result list` `            ``result.append(``"Buzz"``)` `        ``else``:`   `            ``# Add the current number as a string to the` `            ``# result list` `            ``result.append(``str``(i))`   `    ``# Return the result list` `    ``return` `result`     `# Driver code` `n ``=` `20`   `# Call the fizz_buzz function to get the result` `result ``=` `fizz_buzz(n)`   `# Print the result` `print``(``' '``.join(result))`

## C#

 `using` `System;` `using` `System.Collections.Generic;`   `class` `Program {` `    ``static` `List<``string``> FizzBuzz(``int` `n)` `    ``{` `        ``// Declare a list of strings to store the results` `        ``List<``string``> result = ``new` `List<``string``>();`   `        ``// Loop from 1 to n (inclusive)` `        ``for` `(``int` `i = 1; i <= n; ++i) {` `            ``// Check if i is divisible by both 3 and 5` `            ``if` `(i % 3 == 0 && i % 5 == 0) {` `                ``// Add "FizzBuzz" to the result list` `                ``result.Add(``"FizzBuzz"``);` `            ``}` `            ``// Check if i is divisible by 3` `            ``else` `if` `(i % 3 == 0) {` `                ``// Add "Fizz" to the result list` `                ``result.Add(``"Fizz"``);` `            ``}` `            ``// Check if i is divisible by 5` `            ``else` `if` `(i % 5 == 0) {` `                ``// Add "Buzz" to the result list` `                ``result.Add(``"Buzz"``);` `            ``}` `            ``else` `{` `                ``// Add the current number as a string to the` `                ``// result list` `                ``result.Add(i.ToString());` `            ``}` `        ``}`   `        ``// Return the result list` `        ``return` `result;` `    ``}`   `    ``static` `void` `Main(``string``[] args)` `    ``{` `        ``int` `n = 20;`   `        ``// Call the FizzBuzz function to get the result` `        ``List<``string``> result = FizzBuzz(n);`   `        ``// Print the result` `        ``foreach``(``string` `s ``in` `result)` `        ``{` `            ``Console.Write(s + ``" "``);` `        ``}` `    ``}` `}`

## Javascript

 `function` `fizzBuzz(n) {` `    ``// Declare an array to store the results` `    ``let result = [];`   `    ``// Loop from 1 to n (inclusive)` `    ``for` `(let i = 1; i <= n; ++i) {` `    `  `        ``// Check if i is divisible by both 3 and 5` `        ``if` `(i % 3 === 0 && i % 5 === 0) {` `        `  `            ``// Add "FizzBuzz" to the result array` `            ``result.push(``"FizzBuzz"``);` `        ``} ` `        `  `        ``// Check if i is divisible by 3` `        ``else` `if` `(i % 3 === 0) {` `        `  `            ``// Add "Fizz" to the result array` `            ``result.push(``"Fizz"``);` `        ``} ` `        `  `        ``// Check if i is divisible by 5` `        ``else` `if` `(i % 5 === 0) {` `        `  `            ``// Add "Buzz" to the result array` `            ``result.push(``"Buzz"``);` `        ``} ` `        ``else` `{` `        `  `            ``// Add the current number as a string to the` `            ``// result array` `            ``result.push(i.toString());` `        ``}` `    ``}`   `    ``// Return the result array` `    ``return` `result;` `}`   `// Driver code` `let n = 20;`   `// Call the fizzBuzz function to get the result` `let result = fizzBuzz(n);`   `// Print the result` `console.log(result.join(``' '``));`

Output

```1 2 Fizz 4 Buzz Fizz 7 8 Fizz Buzz 11 Fizz 13 14 FizzBuzz 16 17 Fizz 19 Buzz
```

Time Complexity: O(N)
Auxiliary Space: O(1)

Feeling lost in the world of random DSA topics, wasting time without progress? It's time for a change! Join our DSA course, where we'll guide you on an exciting journey to master DSA efficiently and on schedule.
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 geeks!

Previous
Next