# Count Odd and Even numbers in a range from L to R

Given two numbers L and R, the task is to count the number of odd numbers in the range L to R.

Examples:

Input: l = 3, r = 7
Output: 3 2
Count of odd numbers is 3 i.e. 3, 5, 7
Count of even numbers is 2 i.e. 4, 6

Input: l = 4, r = 8
Output: 2

## Recommended: Please try your approach on {IDE} first, before moving on to the solution.

Approach: Total numbers in the range will be (R – L + 1) i.e. N.

1. If N is even then the count of both odd and even numbers will be N/2.
2. If N is odd,
• If L or R is odd, then the count of odd number will be N/2 + 1 and even numbers = N – countofOdd.
• Else, count of odd numbers will be N/2 and even numbers = N – countofOdd.

Below is the implementation of the above approach:

## C++

 `// C++ implementation of the above approach  ` `#include ` ` `  `using` `namespace` `std; ` ` `  `// Return the number of odd numbers  ` `// in the range [L, R]  ` `int` `countOdd(``int` `L, ``int` `R){  ` ` `  `    ``int` `N = (R - L) / 2; ` ` `  `    ``// if either R or L is odd  ` `    ``if` `(R % 2 != 0 || L % 2 != 0)  ` `        ``N += 1; ` ` `  `    ``return` `N; ` `} ` ` `  `// Driver code ` `int` `main() ` `{  ` `    ``int` `L = 3, R = 7; ` `    ``int` `odds = countOdd(L, R);  ` `    ``int` `evens = (R - L + 1) - odds;  ` `     `  `    ``cout << ``"Count of odd numbers is "` `<< odds << endl;  ` `    ``cout << ``"Count of even numbers is "` `<< evens << endl; ` `    ``return` `0; ` `} ` ` `  `// This code is contributed by Rituraj Jain `

## Java

 `// Java implementation of the above approach ` ` `  `class` `GFG { ` ` `  `    ``// Return the number of odd numbers ` `    ``// in the range [L, R] ` `    ``static` `int` `countOdd(``int` `L, ``int` `R) ` `    ``{ ` `        ``int` `N = (R - L) / ``2``; ` ` `  `        ``// if either R or L is odd ` `        ``if` `(R % ``2` `!= ``0` `|| L % ``2` `!= ``0``) ` `            ``N++; ` ` `  `        ``return` `N; ` `    ``} ` ` `  `    ``// Driver code ` `    ``public` `static` `void` `main(String[] args) ` `    ``{ ` `        ``int` `L = ``3``, R = ``7``; ` ` `  `        ``int` `odds = countOdd(L, R); ` `        ``int` `evens = (R - L + ``1``) - odds; ` `        ``System.out.println(``"Count of odd numbers is "` `+ odds); ` `        ``System.out.println(``"Count of even numbers is "` `+ evens); ` `    ``} ` `} `

## Python 3

 `# Python 3 implementation of the  ` `# above approach ` ` `  `# Return the number of odd numbers ` `# in the range [L, R] ` `def` `countOdd(L, R): ` ` `  `    ``N ``=` `(R ``-` `L) ``/``/` `2` ` `  `    ``# if either R or L is odd ` `    ``if` `(R ``%` `2` `!``=` `0` `or` `L ``%` `2` `!``=` `0``): ` `        ``N ``+``=` `1` ` `  `    ``return` `N ` ` `  `# Driver code ` `if` `__name__ ``=``=` `"__main__"``: ` `     `  `    ``L ``=` `3` `    ``R ``=` `7` ` `  `    ``odds ``=` `countOdd(L, R) ` `    ``evens ``=` `(R ``-` `L ``+` `1``) ``-` `odds ` `    ``print``(``"Count of odd numbers is"``, odds) ` `    ``print``(``"Count of even numbers is"``, evens) ` ` `  `# This code is contributed by ita_c `

## C#

 `// C# implementation of the above approach  ` `using` `System; ` ` `  `class` `GFG ` `{  ` ` `  `    ``// Return the number of odd numbers  ` `    ``// in the range [L, R]  ` `    ``static` `int` `countOdd(``int` `L, ``int` `R)  ` `    ``{  ` `        ``int` `N = (R - L) / 2;  ` ` `  `        ``// if either R or L is odd  ` `        ``if` `(R % 2 != 0 || L % 2 != 0)  ` `            ``N++;  ` ` `  `        ``return` `N;  ` `    ``}  ` ` `  `    ``// Driver code  ` `    ``public` `static` `void` `Main()  ` `    ``{  ` `        ``int` `L = 3, R = 7;  ` ` `  `        ``int` `odds = countOdd(L, R);  ` `        ``int` `evens = (R - L + 1) - odds;  ` `        ``Console.WriteLine(``"Count of odd numbers is "` `+ odds);  ` `        ``Console.WriteLine(``"Count of even numbers is "` `+ evens);  ` `    ``}  ` `}  ` ` `  `// This code is contributed by Ryuga `

## PHP

 ` `

Output:

```Count of odd numbers is 3
Count of even numbers is 2
```

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.

My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.