Open In App

# Check a number is odd or even without modulus operator

Given a number, check whether it is even or odd.

Examples :

```Input: n = 11
Output: Odd

Input: n = 10
Output: Even
```

Method 1: Using Loop.
The idea is to start with a boolean flag variable as true and switch it n times. If flag variable gets original value (which is true) back, then n is even. Else n is false.

Below is the implementation of this idea.

## C++

 `// A simple C++ program to check for``// even or odd``#include ``using` `namespace` `std;` `// Returns true if n is even, else odd``bool` `isEven(``int` `n)``{``    ``bool` `isEven = ``true``;``    ``for` `(``int` `i=1;  i <= n; i++)``        ``isEven = !isEven;``    ``return` `isEven;``}` `// Driver code``int` `main()``{``    ``int` `n = 101;``    ``isEven(n) ? cout << ``"Even"` `: cout << ``"Odd"``;``    ``return` `0;``}`

## Java

 `// A simple Java program to``// check for even or odd` `class` `GFG {``    ` `    ``// Returns true if n``    ``// is even, else odd``    ``static` `boolean` `isEven(``int` `n)``    ``{``        ``boolean` `isEven = ``true``;``        ` `        ``for` `(``int` `i = ``1``; i <= n; i++)``            ``isEven = !isEven;``            ` `        ``return` `isEven;``    ``}``    ` `    ` `    ``// Driver Code``    ``public` `static` `void` `main(String args[])``    ``{``        ` `        ``int` `n = ``101``;``        ``if``(isEven(n))``            ``System.out.println(``"Even"``);``        ``else``            ``System.out.println(``"Odd"``);``        ` `    ``}``}` `// This code is contributed by Sam007`

## Python3

 `# A simple Python program to``# check for even or odd` `# Returns true if n is even,``# else odd``def` `isEven(n):``    ``isEven ``=` `True``;``    ``for` `i ``in` `range``(``1``, n``+``1``):``        ``if` `isEven ``=``=` `True``:``            ``isEven ``=` `False``;``        ``else``:``            ``isEven ``=` `True``;` `    ``return` `isEven;` `# Driver code   ``n ``=` `101``;``if` `isEven(n) ``=``=` `True``:``    ``print` `(``"Even"``);``else``:``    ``print` `(``"Odd"``);``    ` `# This code is contributed by``# Manish Shaw (manishshaw1)`

## C#

 `// A simple C# program to check for``// even or odd``using` `System;` `public` `class` `GFG {``    ` `    ``// Returns true if n is even,``    ``// else odd``    ``static` `bool` `isEven(``int` `n)``    ``{``        ``bool` `isEven = ``true``;``        ` `        ``for` `(``int` `i = 1; i <= n; i++)``            ``isEven = !isEven;``            ` `        ``return` `isEven;``    ``}``    ` `    ``// Driver code``    ``public` `static` `void` `Main()``    ``{``        ``int` `n = 101;``        ``if``(isEven(n))``            ``Console.Write(``"Even"``);``        ``else``            ``Console.Write(``"Odd"``);``    ``}``}` `// This code is contributed by Sam007.`

## PHP

 ``

## Javascript

 ``

Output:

`Odd`

Time Complexity : O(n)

Auxiliary Space: O(1)

Method 2: By multiply and divide by 2. Divide the number by 2 and multiply by 2 if the result is same as input then it is an even number else it is an odd number.

## C++

 `// A simple C++ program to check for``// even or odd``#include ``using` `namespace` `std;` `// Returns true if n is even, else odd``bool` `isEven(``int` `n)``{``    ``// Return true if n/2 does not result``    ``// in a float value.``    ``return` `((n / 2) * 2 == n);``}` `// Driver code``int` `main()``{``    ``int` `n = 101;``    ``isEven(n) ? cout << ``"Even"` `: cout << ``"Odd"``;``    ``return` `0;``}`

## Java

 `// A simple Java program``// to check for even or odd` `class` `GFG {``    ` `// Returns true if n``// is even, else odd``static` `boolean` `isEven(``int` `n)``{``    ` `    ``// Return true if``    ``// n/2 does not result``    ``// in a float value.``    ``return` `((n / ``2``) * ``2` `== n);``}` `// Driver code``public` `static` `void` `main(String[] args)``{``    ``int` `n = ``101``;``    ``if``(isEven(n) != ``false``)``        ``System.out.print( ``"Even"` `);``    ``else``        ``System.out.print( ``"Odd"` `);``}``}` `// This code is contributed by``// Smitha Dinesh Semwal.`

## Python3

 `# A simple Python 3 program``# to check for even or odd` `# Returns true if n``# is even, else odd``def` `isEven(n):` `    ` `    ``# Return true if``    ``# n/2 does not result``    ``# in a float value.``    ``return` `(``int``(n ``/` `2``) ``*` `2` `=``=` `n)`  `# Driver code``n ``=` `101``if``(isEven(n) !``=` `False``):``    ``print``(``"Even"``)``else``:``    ``print``(``"Odd"``)` `# This code is contributed by``# Smitha Dinesh Semwal.`

## C#

 `// A simple C# program``// to check for even or odd``using` `System;``class` `GFG {``    ` `// Returns true if n``// is even, else odd``static` `bool` `isEven(``int` `n)``{``    ` `    ``// Return true if``    ``// n/2 does not result``    ``// in a float value.``    ``return` `((n / 2) * 2 == n);``}` `// Driver code``public` `static` `void` `Main(String[] args)``{``    ``int` `n = 101;``    ``if``(isEven(n) != ``false``)``        ``Console.Write(``"Even"``);``    ``else``        ``Console.Write(``"Odd"``);``}``}` `// This code is contributed by``// Smitha Dinesh Semwal.`

## PHP

 ``

## Javascript

 ``

Output :

`Odd`

Time Complexity : O(1)

Auxiliary Space: O(1)

Method 3: Using Bitwise operator &.
A better solution is to use bitwise operators. We need to check whether last bit is 1 or not. If last bit is 1 then the number is odd, otherwise always even.

Explanation:

``` input : 5    // odd
00000101
& 00000001
--------------
00000001
--------------

input : 8     //even
00001000
& 00000001
--------------
00000000
--------------```

Below is the implementation of the idea.

## C++

 `// A simple C++ program to check for``// even or odd``#include ``using` `namespace` `std;` `// Returns true if n is even, else odd``bool` `isEven(``int` `n)``{``    ``// n&1 is 1, then odd, else even``    ``return` `(!(n & 1));``}` `// Driver code``int` `main()``{``    ``int` `n = 101;``    ``isEven(n) ? cout << ``"Even"` `: cout << ``"Odd"``;``    ``return` `0;``}`

## Java

 `// A simple Java program to check for``// even or odd``import` `java.io.*;``import` `java.util.*;` `public` `class` `GFG {``     ` `    ``// Returns 0 if n``    ``// is even, else odd``    ``static` `int` `isEven(``int` `n)``    ``{``         ` `        ``// n&1 is 1, then``        ``// odd, else even``        ``return` `(n & ``1``);``    ``}``     ` `    ``// Driver code``    ``public` `static` `void` `main(String args[])``    ``{``        ``int` `n = ``101``;``        ``if``(isEven(n)==``0``)``            ``System.out.print(``"Even"``);``        ``else``            ``System.out.print(``"Odd"``);``    ``}``}`` ` `// This code is contributed``// by Manish Shaw (manishshaw1)`

## Python3

 `# A simple Python program to``# check for even or odd``# Returns 0 if n``# is even, else odd``def` `isEven(n) :``     ` `    ``# n&1 is 1, then``    ``# odd, else even``    ``return` `(n & ``1``);`` ` `# Driver code``n ``=` `101``;``if``(isEven(n) ``=``=` `0``) :``    ``print` `(``"Even"``);``else` `:``    ``print` `(``"Odd"``);``     ` `# This code is contributed``# by Manish Shaw (manishshaw1)`

## C#

 `// A simple C# program to check for``// even or odd``using` `System;``using` `System.Collections.Generic;` `class` `GFG {``    ` `    ``// Returns 0 if n``    ``// is even, else odd``    ``static` `int` `isEven(``int` `n)``    ``{``        ` `        ``// n&1 is 1, then``        ``// odd, else even``        ``return` `(n & 1);``    ``}``    ` `    ``// Driver code``    ``public` `static` `void` `Main()``    ``{``        ``int` `n = 101;``        ``if``(isEven(n)==0)``            ``Console.Write(``"Even"``);``        ``else``            ``Console.Write(``"Odd"``);``    ``}``}` `// This code is contributed``// by Manish Shaw (manishshaw1)`

## PHP

 ``

## Javascript

 ``

Output :

`Odd`

Time Complexity : O(1)

Auxiliary Space: O(1)