# [Solved]: Hacker Rank FizzBuzz Problem

In this tutorial, we will look at the solution of hacker rank FizzBuzz Problem. This is a very basic problem that you will come across in hacker rank. We have covered the solution in four programming languages namely, Python3, C, Go and Java8.

## Problem Statement

Also read: 8 Things You Must Know in Python (2023)

Problem: FizzBuzz

Given a number n, for each integer i in the range from 1 to n inclusive, print one value per line as follows:

• if i is a multiple of both 3 and 5, print FizzBuzz
• if i is a multiple of 3(but not 5), print Fizz
• if i is a multiple of 5(but not 3), print Buzz
• if i is not a multiple of 3 or 5, print the value of i.

Constraints:

• 0 <n< 2 x 1o^5

Sample Input

STDIN           Function
——–             ————–
15             ->           n = 15

Sample Output

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

## [Solved]: Hacker Rank FizzBuzz Problem

We have provided the FizzBuzz problem solution in four programming languages. I will recommend you to try to convert the solution from one programming language to another by yourself before looking into the solution.

## Python3 Solution

### Using basic approach

```#!/bin/python3

def fizzBuzz(n):

for i in range(1, n+1):
if i%3 == 0 and i%5 == 0:
print("FizzBuzz")

elif i%3 == 0:
print("Fizz")

elif i%5 == 0:
print("Buzz")

else:
print(i)

if __name__ == '__main__':

n = int(input().strip())
fizzBuzz(n)```

### Using tuple

```def fizzBuzz(n):

fizz_buzz_mapping = [(3, "Fizz"), (5, "Buzz")]
for i in range(1, n + 1):
result = ''.join(word for num, word in fizz_buzz_mapping if i % num == 0)
print(result or i)

if __name__ == '__main__':

n = int(input().strip())
fizzBuzz(n)```

## Go Solution

```package main

import (
"fmt"
)

func fizzBuzz(n int) {

for i := 1; i <= n; i++ {
result := ""
if i%3 == 0 {
result += "Fizz"

}

if i%5 == 0 {
result += "Buzz"
}

if result == "" {
result = fmt.Sprint(i)
}

fmt.Println(result)
}
}

func main() {

var n int
fmt.Scan(&n)
fizzBuzz(n)
}```

## Java 8 Solution

```import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.IntStream;

public class FizzBuzz {
public static void main(String[] args) {
int n = Integer.parseInt(System.console().readLine("Enter a number: "));
fizzBuzz(n);
}

public static void fizzBuzz(int n) {
List<String> fizzBuzzMapping = new ArrayList<>();

IntStream.rangeClosed(1, n)
.mapToObj(i -> fizzBuzzMapping.stream()
.filter(pair -> i % Integer.parseInt(pair) == 0)
.collect(Collectors.joining()))
.forEach(result -> System.out.println(result.isEmpty() ? result : result));
}
}```

## C Solution

```#include <stdio.h>
#include <stdbool.h>

// Function to check if a number is divisible by another number
bool isDivisible(int num, int divisor) {
return num % divisor == 0;
}

int main() {
int n;
printf("Enter a number: ");
scanf("%d", &n);

for (int i = 1; i <= n; i++) {
bool divisibleBy3 = isDivisible(i, 3);
bool divisibleBy5 = isDivisible(i, 5);

if (divisibleBy3 || divisibleBy5) {
if (divisibleBy3) {
printf("Fizz");
}
if (divisibleBy5) {
printf("Buzz");
}
} else {
printf("%d", i);
}

printf("\n");
}

return 0;
}```