Everybody knows that FizzBuzz
question that interviewers ask students.
Basically, when you have an incrementor and for each number which is a divisible of 3
you say fizz
, for a number divisible by 5
you say buzz
, while if it is divisible by both(3 and 5)
you say FizzBuzz
, hence the name.
It is a relatively easy problem to solve and I have done it, but I think my solution is a bit clunky. This is it:
int[] numbers = new int[100];
for (int i = 0; i < numbers.length; i++) {
numbers[i] = i;
}
for (int i : numbers) {
if (i % 3 == 0) {
System.out.println("Fizz");
} else if(i % 5 == 0) {
System.out.println("Buzz");
} else {
System.out.println("FizzBuzz");
}
}
But the problem is that when the number is divisible by both 3 and 5 it gives me "Fizz" for some reason. Can somebody explain to me, because I'm new to java programming. Thanks in advance!