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 = 19
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 <bits/stdc++.h>using namespace std;vector<string> fizzBuzz(int n){ // Declare a vector of strings to store the results vector<string> 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 codeint main(){ int n = 20; // Call the fizzBuzz function to get the result vector<string> 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<String> fizzBuzz(int n) { // Declare a list of strings to store the results List<String> 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<String> 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 coden = 20# Call the fizz_buzz function to get the resultresult = fizz_buzz(n)# Print the resultprint(' '.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 codelet n = 20;// Call the fizzBuzz function to get the resultlet result = fizzBuzz(n);// Print the resultconsole.log(result.join(' ')); |
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)
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!
