In this program, we will learn how to check whether a number is even or odd using C++ programming language.

An integer number which is perfectly divisible by 2 is called even number. For example, 2, 4, 6, 8, .... are even numbers.

An integer number which gives a remainder when divided by 2 is known as an odd number. For example, 3, 5, 7, 9, .... are odd numbers.

We will discuss two ways

- Using Modulus operator ( % )
- Using Bitwise operator ( & )

Let's discuss them one by one.

## Check whether a number is even or odd

### Using modulus operator ( % )

In the below code, the variable **num** is divided by 2 and its remainder is compared. If the remainder is 0, then the number is even. If the remainder is 1, then the number is odd.

Code:-

#include <iostream>
using namespace std;
int main(){
int num;
cout << "Enter a number: ";
cin >> num;
if ( num % 2 == 0)
cout << num << " is an even number." << endl;
else
cout << num << " is an odd number." << endl;
return 0;
}

Output:-

Enter a number: 9

9 is an odd number.

Enter a number: 22

22 is an even number.

### Using Bitwise operator ( & )

A number is odd if it has 1 as its rightmost bit in bitwise representation. And it is even if it has 0 as its rightmost bit in bitwise representation. This can be found by using bitwise **AND (&) o**perator on the number and 1. If it gives 0, then the number is even and if it gives 1, then the number is odd.

Code:-

#include <iostream>
using namespace std;
int main(){
int num;
cout << "Enter a number: ";
cin >> num;
if ( (num & 1) == 0)
cout << num << " is an even number." << endl;
else
cout << num << " is an odd number." << endl;
return 0;
}

Output:-

Enter a number: 65

65 is an odd number.

Enter a number: 58

58 is an even number.