# 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

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

- If N is even then the count of both odd and even numbers will be
**N/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**.

- If L or R is odd, then the count of odd number will be

Below is the implementation of the above approach:

## C++

`// C++ implementation of the above approach ` `#include <bits/stdc++.h> ` ` ` `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 ` |

*chevron_right*

*filter_none*

## 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); ` ` ` `} ` `} ` |

*chevron_right*

*filter_none*

## 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 ` |

*chevron_right*

*filter_none*

## 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 ` |

*chevron_right*

*filter_none*

## PHP

`<?php ` `// PHP implementation of the above approach ` ` ` `// Return the number of odd numbers ` `// in the range [L, R] ` `function` `countOdd(` `$L` `, ` `$R` `) ` `{ ` ` ` `$N` `= (` `$R` `- ` `$L` `) / 2; ` ` ` ` ` `// if either R or L is odd ` ` ` `if` `(` `$R` `% 2 != 0 || ` `$L` `% 2 != 0) ` ` ` `$N` `++; ` ` ` ` ` `return` `$N` `; ` `} ` ` ` `// Driver code ` `$L` `= 3; ` `$R` `= 7; ` ` ` `$odds` `= countOdd(` `$L` `, ` `$R` `); ` `$evens` `= (` `$R` `- ` `$L` `+ 1) - ` `$odds` `; ` `echo` `"Count of odd numbers is "` `. ` `$odds` `. ` `"\n"` `; ` `echo` `"Count of even numbers is "` `. ` `$evens` `; ` ` ` `// This code is contributed ` `// by Akanksha Rai ` `?> ` |

*chevron_right*

*filter_none*

**Output:**

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

## Recommended Posts:

- Count of numbers having only 1 set bit in the range [0, n]
- Count numbers in range 1 to N which are divisible by X but not by Y
- Count factorial numbers in a given range
- Count of numbers from range [L, R] whose sum of digits is Y
- Count of numbers from range [L, R] that end with any of the given digits
- Count the numbers divisible by 'M' in a given range
- Count of common multiples of two numbers in a range
- Count numbers in range L-R that are divisible by all of its non-zero digits
- Count numbers with unit digit k in given range
- Count numbers from range whose prime factors are only 2 and 3
- Sum of numbers in a range [L, R] whose count of divisors is prime
- Count all the numbers in a range with smallest factor as K
- Count of numbers from the range [L, R] which contains at least one digit that divides K
- Numbers in range [L, R] such that the count of their divisors is both even and prime
- Count of Numbers in Range where the number does not contain more than K non zero digits

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.