Related Articles
Find the middle digit of a given Number
• Difficulty Level : Hard
• Last Updated : 06 May, 2021

Given a number N, the task is to find the middle digit of the given number N. If the number has two middle digits then print the first middle digit.

Examples:

Input: N = 12345
Output: 3

Input: N = 98562
Output: 5

Approach: The middle digit of any number N can be given by

The length(len) of the given Number can be calculated as

For example:

If N = 12345
len = (int)log10(12345) + 1 = 5
Therefore,
First half of N = N/105/2 = N/102 = 123
Therefore middle digit of N = last digit of First half of N = (First half of N) % 10 = 123 % 10 = 3

Below code is the implementation of the above approach:

## C++

 // Program to find middle digit of number #include using namespace std; // Function to find the middle digitint middleDigit(int n){    // Find total number of digits    int digits = (int)log10(n) + 1;     // Find middle digit    n = (int)(n / pow(10, digits / 2))        % 10;     // Return middle digit    return n;} // Driver programint main(){    // Given Number N    int N = 98562;     // Function call    cout << middleDigit(N)         << "\n";    return 0;}

## Java

 // Java program to find middle digit of numberclass GFG{ // Function to find the middle digitstatic int middleDigit(int n){         // Find total number of digits    int digits = (int)Math.log10(n) + 1;     // Find middle digit    n = (int)(n / Math.pow(10, digits / 2)) % 10;     // Return middle digit    return n;} // Driver Codepublic static void main(String[] args){         // Given number N    int N = 98562;     // Function call    System.out.println(middleDigit(N));}} // This code is contributed by rutvik_56

## Python3

 # Python3 Program to find middle digit of numberimport math # Function to find the middle digitdef middleDigit(n):     # Find total number of digits    digits = math.log10(n) + 1;     # Find middle digit    n = int((n // math.pow(10, digits // 2))) % 10;     # Return middle digit    return n; # Driver program # Given Number NN = 98562; # Function callprint(middleDigit(N)) # This code is contributed by Code_Mech

## C#

 // C# program to find middle digit of numberusing System; class GFG{     // Function to find the middle digitstatic int middleDigit(int n){             // Find total number of digits    int digits = (int)Math.Log10(n) + 1;         // Find middle digit    n = (int)(n / Math.Pow(10, digits / 2)) % 10;         // Return middle digit    return n;} // Driver codestatic void Main(){             // Given number N    int N = 98562;         // Function call    Console.WriteLine(middleDigit(N));}} // This code is contributed by divyeshrabadiya07

## Javascript

 
Output:
5

Time Complexity: O(1)

Auxiliary Space: O(1)

Attention reader! Don’t stop learning now. Get hold of all the important mathematical concepts for competitive programming with the Essential Maths for CP Course at a student-friendly price. To complete your preparation from learning a language to DS Algo and many more,  please refer Complete Interview Preparation Course.

My Personal Notes arrow_drop_up