# Check if Number is Even/Odd

``````function isEven(value) {
if (value%2 == 0)
return true;
else
return false;
}``````

1. Red

Why not just

function isEven(value) {
return (value%2 == 0);
}

• meher

printing it whether it z odd or even is equally important…!!! but the logic is quite good.. sweet and simple..!!

2. Robin

And the PHP version only needs an extra dollar sign:

function isEven(\$int){
return (\$int%2 == 0);
}

In these times, I can assume most webdevvers use a javascript library like jQuery or similar. These libraries have functions like isEven built in.

For those who don’t use such libraries: great snippet ;)

3. Gautham

I came across http://rindovincent.blogspot.com/p/javascript.html where there was a simple Javascript program to find whether the number is odd or even. I am pasting the same code with permission here.

var n = prompt(“Enter a number to find odd or even”, “Type your number here”);
n = parseInt(n);
if (isNaN(n))
{
}
else if (n == 0)
{
}
else if (n%2)
{
}
else
{
}

4. Miljenko

function isEven(value)
{
return /^\d+\$/.test(value.toString()) ? (value%2 === 0 ? true : false ) : false;
};

5. x.Flowwolf

//so, my turn =)
function isEven(value){
return isFinite(+value) && !(+value % 2)
}

6. Pj

function isOdd(n){
return 1&n;
}

Do i win?

7. shabeeb

start
reminder=n/2
if (reminder=0)
print”number is even”
else
print”number is odd”
stop

8. kelly johnson

I’ve read that the == comparison is dangerous because it does type coercion to make comparisons so it’s better practice to use === which will return true if both the left/right side are truly identical.

• Evan

Generally, it’s best practice to use `===` but in this example, `value % 2` is guaranteed to return an integer or `NaN`, which allows us to absolutely know the type of variable we’re comparing on either side of `num % 2` or `0`, but not `num` itself.

The problem comes down to if you accidentally get a `false` or `true` as an input, which loosely converts to a `0` or `1` when using the `%` operator. This might cause some problems in your code if `false` returns `true`. You normally would use a equality (`===`) operator to make this comparison, but since the boolean gets converted to a number on the `%` operator, equality won’t work here as most have typed the function.

Given the unknown nature of the use for this function and given it’s name, I’d say the following would be safe to use:

``````function isEven(num) {
return isNaN(num) && num !== false && num !== true ? false : num % 2 == 0;
}
``````

or for those who enjoy readable code:

``````function isEven(num) {
if(num !== false && num !== true && !isNaN(num)) {
return num % 2 == 0;
} else return false;
}
``````
• Tony

@Evan hit it right on the head

also not to mention == is faster than ===, so if you know what you are doing it’s faster to use
the == when applicable but if you are not sure, use ===

Cheers

9. dahal sunil

include<stdio.h>

include<conio.h>

main()
{
int n;
clrscr();
printf(“Enter a Number:\n”);
scanf(“%d”,&n);
if(n%2==0)
{
printf(“Even Number”);
}
else
{
printf(“Odd Number”);
}
getch();
}

• Abe

Hey
I was just wondering
What is the equation “(n % 2 == 0)” actually doing?

10. dahal sunil

Odd And Even syntax

• Omar Hauffen

Odd Syntax is:

Having the Even function…

`!isEven(number)`
11. Omar Hauffen

And what if the “value” isn’t a base 10 number?

```function isEven(value) {
value.toString(10)%2==0?true:false;
}
```
12. Raniya A.

var a;
var b=”ODD”;
var c=”EVEN”;
a=parseInt(window.prompt(“Enter The Value:”));

function chk(a)
{
if (a%2==0)
return c;
else
return b;
}

13. Olmo Kramer

function isEven(value) {
return !x%2;
}

14. Johnny Boy

Here’s a blog article which benchmarks quite a few ways to test if a number is odd or even:
http://blogs.davelozinski.com/curiousconsultant/csharp-net-fastest-way-to-check-if-a-number-is-odd-or-even

There are actually numerous ways to do this other than the two you have listed. Surprisingly, the fastest way appears to be the modulus % operator, even out performing the bitwise ampersand &, as follows:

```if (x % 2 == 0)
total += 1; //even number
else
total -= 1; //odd number
```

Definitely worth a read for those that are curious.

15. Basit

Or we can use the bitwise AND operator.

function oddOrEven(x) {
return ( x & 1 ) ? “odd” : “even”;
}

16. Arman

Sort array elements, with even numbers first followed by odd numbers. (document.write and input the value with prompt)(Javascript) plsss help me..

17. Ian Westerfield

I use modulo a lot… in BED, for example, to log progress:

if (0 === processed % 1000) {
sprintf(“%s records processed”, processed)
}

18. mahnoor

where to input these codes and where to view that a number is odd ..please guys tell me

• Geoff Graham

Hi @mahnoor,

This snippet would go into any JavaScript file that you are serving on the site.

Cheers!

19. Andrew Lewis
``````const isEven = value => ( value % 2  === 0 ? true : false )