给定数字N ,任务是找到给定数字N的中间数字。如果数字有两个中间数字,则打印第一个中间数字。
例子:
Input: N = 12345
Output: 3
Input: N = 98562
Output: 5
方法:任何数字N的中间数字可以由
给定数字的长度( len )可以计算为
例如:
If N = 12345
len = (int)log10(12345) + 1 = 5
Therefore,
First half of N = N/105/2 = N/102 = 123
Therefor middle digit of N = last digit of First half of N = (First half of N) % 10 = 123 % 10 = 3
下面的代码是上述方法的实现:
C++
// Program to find middle digit of number
#include
using namespace std;
// Function to find the middle digit
int 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 program
int main()
{
// Given Number N
int N = 98562;
// Function call
cout << middleDigit(N)
<< "\n";
return 0;
}
Java
// Java program to find middle digit of number
class GFG{
// Function to find the middle digit
static 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 Code
public 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 number
import math
# Function to find the middle digit
def 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 N
N = 98562;
# Function call
print(middleDigit(N))
# This code is contributed by Code_Mech
C#
// C# program to find middle digit of number
using System;
class GFG{
// Function to find the middle digit
static 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 code
static void Main()
{
// Given number N
int N = 98562;
// Function call
Console.WriteLine(middleDigit(N));
}
}
// This code is contributed by divyeshrabadiya07
Javascript
输出:
5
时间复杂度: O(1)
辅助空间: O(1)