Count of numbers from range [L, R] that end with any of the given digits

Given a range [L, R], the task is to find the count of numbers from the range whose last digit is either 2, 3 or 9.

Examples:

Input: L = 1, R = 3
Output: 2
2 and 3 are the only valid numbers.



Input: L = 11, R = 33
Output: 8

Approach: Initialize a counter count = 0 and run a loop for every element from the range, if the current element ends with any of the given digits then increment the count.

Below is the implementation of the above approach:

C++

filter_none

edit
close

play_arrow

link
brightness_4
code

// C++ implementation of the approach
#include <iostream>
using namespace std;
  
// Function to return the count
// of the required numbers
int countNums(int l, int r)
{
    int cnt = 0;
  
    for (int i = l; i <= r; i++)
    {
  
        // Last digit of the current number
        int lastDigit = (i % 10);
  
        // If the last digit is equal to
        // any of the given digits
        if ((lastDigit % 10) == 2 || (lastDigit % 10) == 3
            || (lastDigit % 10) == 9) 
        {
            cnt++;
        }
    }
  
    return cnt;
}
  
// Driver code
int main() 
{
    int l = 11, r = 33;
    cout << countNums(l, r) ;
}
      
// This code is contributed by AnkitRai01

chevron_right


Java

filter_none

edit
close

play_arrow

link
brightness_4
code

// Java implementation of the approach
class GFG {
  
    // Function to return the count
    // of the required numbers
    static int countNums(int l, int r)
    {
        int cnt = 0;
  
        for (int i = l; i <= r; i++) {
  
            // Last digit of the current number
            int lastDigit = (i % 10);
  
            // If the last digit is equal to
            // any of the given digits
            if ((lastDigit % 10) == 2 || (lastDigit % 10) == 3
                || (lastDigit % 10) == 9) {
                cnt++;
            }
        }
  
        return cnt;
    }
  
    // Driver code
    public static void main(String[] args)
    {
        int l = 11, r = 33;
        System.out.print(countNums(l, r));
    }
}

chevron_right


Python3

filter_none

edit
close

play_arrow

link
brightness_4
code

# Python3 implementation of the approach
  
# Function to return the count
# of the required numbers
def countNums(l, r) :
    cnt = 0;
  
    for i in range(l, r + 1) :
  
        # Last digit of the current number
        lastDigit = (i % 10);
  
        # If the last digit is equal to
        # any of the given digits
        if ((lastDigit % 10) == 2 or (lastDigit % 10) == 3
            or (lastDigit % 10) == 9) :
          
            cnt += 1;
  
    return cnt;
  
# Driver code
if __name__ == "__main__"
      
    l = 11; r = 33;
      
    print(countNums(l, r)) ;
  
# This code is contributed by AnkitRai01

chevron_right


C#

filter_none

edit
close

play_arrow

link
brightness_4
code

// C# implementation of the approach 
using System;
  
class GFG 
  
    // Function to return the count 
    // of the required numbers 
    static int countNums(int l, int r) 
    
        int cnt = 0; 
  
        for (int i = l; i <= r; i++) 
        
  
            // Last digit of the current number 
            int lastDigit = (i % 10); 
  
            // If the last digit is equal to 
            // any of the given digits 
            if ((lastDigit % 10) == 2 || 
                (lastDigit % 10) == 3 || 
                (lastDigit % 10) == 9)
            
                cnt++; 
            
        
        return cnt; 
    
  
    // Driver code 
    public static void Main() 
    
        int l = 11, r = 33; 
        Console.Write(countNums(l, r)); 
    
}
  
// This code is contributed by AnkitRai01

chevron_right


Output:

8



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.



Improved By : AnkitRai01