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.

  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++

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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


Python 3

filter_none

edit
close

play_arrow

link
brightness_4
code

# 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


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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


PHP

filter_none

edit
close

play_arrow

link
brightness_4
code

<?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


Output:

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


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.