Dado un número A en base decimal, la tarea es encontrar el dígito N desde el último en base B.
Ejemplos:
Entrada: A = 100, N = 3, B = 4
Salida: 2
Explicación:
(100) 4 = 1210 El
tercer dígito desde el último es 2
Entrada: A = 50, N = 3, B = 5
Salida: 2
Explicación:
( 50) 5 = 200 El
tercer dígito desde el último es 2
Enfoque: La idea es saltar (N-1) dígitos del número dado en base B dividiendo el número con B, (N – 1) veces y luego devolver el módulo del número actual por B para obtener el N -ésimo dígito de la derecha.
A continuación se muestra la implementación del enfoque anterior:
C++
// C++ Implementation to find Nth digit // from right in base B #include <iostream> using namespace std; // Function to compute Nth digit // from right in base B int nthDigit(int a, int n, int b) { // Skip N-1 Digits in Base B for (int i = 1; i < n; i++) a = a / b; // Nth Digit from right in Base B return a % b; } // Driver Code int main() { int a = 100; int n = 3; int b = 4; cout << nthDigit(a, n, b); return 0; }
Java
// Java Implementation to find Nth digit // from right in base B import java.util.*; class GFG { // Function to compute Nth digit // from right in base B static int nthDigit(int a, int n, int b) { // Skip N-1 Digits in Base B for (int i = 1; i < n; i++) a = a / b; // Nth Digit from right in Base B return a % b; } // Driver Code public static void main(String[] args) { int a = 100; int n = 3; int b = 4; System.out.print(nthDigit(a, n, b)); } } // This code is contributed by PrinciRaj1992
Python3
# Python3 Implementation to find Nth digit # from right in base B # Function to compute Nth digit # from right in base B def nthDigit(a, n, b): # Skip N-1 Digits in Base B for i in range(1, n): a = a // b # Nth Digit from right in Base B return a % b # Driver Code a = 100 n = 3 b = 4 print(nthDigit(a, n, b)) # This code is contributed by ApurvaRaj
C#
// C# Implementation to find Nth digit // from right in base B using System; class GFG { // Function to compute Nth digit // from right in base B static int nthDigit(int a, int n, int b) { // Skip N-1 Digits in Base B for (int i = 1; i < n; i++) a = a / b; // Nth Digit from right in Base B return a % b; } // Driver Code public static void Main() { int a = 100; int n = 3; int b = 4; Console.Write(nthDigit(a, n, b)); } } // This code is contributed by AnkitRai01
Javascript
<script> // Javascript Implementation to find Nth digit // from right in base B // Function to compute Nth digit // from right in base B function nthDigit(a, n, b) { // Skip N-1 Digits in Base B for (var i = 1; i < n; i++) a = parseInt(a / b); // Nth Digit from right in Base B return a % b; } // Driver Code var a = 100; var n = 3; var b = 4; document.write(nthDigit(a, n, b)); // This code is contributed by rutvik_56. </script>
2
Complejidad de tiempo: O(N)
Espacio Auxiliar: O(1)
Publicación traducida automáticamente
Artículo escrito por ANKITKUMAR34 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA