Dado un número N , la tarea es encontrar el dígito medio del número N dado . Si el número tiene dos dígitos medios, imprima el primer dígito medio.
Ejemplos:
Entrada: N = 12345
Salida: 3Entrada: N = 98562
Salida: 5
Método: El dígito del medio de cualquier número N puede estar dado por
La longitud ( len ) del número dado se puede calcular como
Por ejemplo:
Si N = 12345
len = (int)log 10 (12345) + 1 = 5
Por lo tanto,
Primera mitad de N = N/10 5/2 = N/10 2 = 123
Por lo tanto, dígito medio de N = último dígito de Primera mitad de N = (Primera mitad de N) % 10 = 123 % 10 = 3
El siguiente código es la implementación del enfoque anterior:
C++
// Program to find middle digit of number #include <bits/stdc++.h> 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
<script> // Program to find middle digit of number // Function to find the middle digit function middleDigit(n) { // Find total number of digits let digits = parseInt(Math.log10(n) + 1); // Find middle digit n = parseInt(parseInt(n / Math.pow(10, parseInt(digits / 2))) % 10); // Return middle digit return n; } // Driver program // Given Number N let N = 98562; // Function call document.write(middleDigit(N)); // This code is contributed by subham348. </script>
Producción:
5
Complejidad de tiempo: O(1)
Espacio Auxiliar: O(1)