Miguel Ortiz
Miguel Ortiz

Reputation: 9

How to identify the number 0 as zero and not as an even number

Complete noob. Just wanna log the number 0 as zero and not even.

var num = 0

if (num % 2 !== 0) {

  console.log("odd")

} else if (num % 2 === 0) {

  console.log("even")

} else if (num == 0) {

  console.log("zero")

} else {

  console.log("error")
}

I expect the output to be "zero" but it keeps logging it as even.

Upvotes: 0

Views: 134

Answers (2)

Jasmin Raval
Jasmin Raval

Reputation: 304

in your code you are testing num%2===0 before num==0 that's why you are getting the 'even' as your output try like this and your code will work fine :)

 var num= 0

if (num % 2 !==0){

    console.log("odd")

} else if (num == 0){

    console.log("zero")

}  else if (num %2 ===0){

    console.log("even")

}else {

    console.log("error")
}

Upvotes: 1

Hien Nguyen
Hien Nguyen

Reputation: 18973

Because if else if and else run top down, if it meet a condition, it will ignore other condition.

You can move the else if zero up like this.

var num= 0

if (num % 2 !==0){

    console.log("odd")

} else if (num == 0){

    console.log("zero")

}
else if (num %2 ===0){

    console.log("even")

}  else {

    console.log("error")
}

Upvotes: 2

Related Questions