Search code examples
for-loopif-statementfizzbuzz

Unexpected Token on FizzBuzz Solution


I would like to console.log to print all the numbers from 1 to 100, with two exceptions. For numbers divisible by 3, print "Fizz" instead of the number, and for numbers divisible by 5 (and not 3), print "Buzz" instead. AND print "FizzBuzz" for all numbers divisible by 5 and 3.

for (let number = 1; number <= 100; number ++) {
    if (number % 3 === 0 && number % 5 === 0) {
        console.log(number + "fizzbuzz");
} else if (number % 5 === 0) {
    console.log(number + "buzz");
} else if (number % 3 === 0)
    console.log(number + "fizz");
} else  {
    console.log(number);
}

Console says I have an "unexpected token else" at the last else statement (the one without a condition).

SourceCode


Solution

  • the last else is outside the for loop.

    this should be right:

    for (let number = 1; number <= 100; number ++) {
        if (number % 3 === 0 && number % 5 === 0) {
            console.log(number + "fizzbuzz");
    } else if (number % 5 === 0) {
        console.log(number + "buzz");
    } else if (number % 3 === 0)
        console.log(number + "fizz");
        else  {
        console.log(number);
      }
    }