Valor posicional de un dígito dado en un número

El valor posicional se puede definir como el valor representado por un dígito en un número en función de su posición en el número. Aquí está la ilustración del valor posicional con un ejemplo:
 

Tomemos otro ejemplo para ilustrar el valor posicional de N = 45876 
 

Problema: 
Dado un entero positivo N y un dígito D . La tarea es encontrar el valor posicional de un dígito D en el número N dado . Si ocurren varias apariciones de dígitos, encuentre el valor posicional mínimo.
Ejemplo:
 

Entrada: N = 3928, D = 3 
Salida: 3000 
Explicación: 
El valor posicional de 3 en este número es 3*1000 = 3000
Entrada: N = 67849, D = 6 
Salida: 60000 
 

Enfoque de solución: 
 

  1. Encuentre la posición del dígito del lado derecho del número de entrada. Para encontrar la posición, tome el mod de ese número por 10 y verifique el número y divida el número por 10.
  2. Cuando se encuentre la posición del dígito, simplemente multiplique el dígito con la posición 10 .

Aquí está la implementación del enfoque anterior: 
 

C++

// C++ implementation to find
// place value of a number
#include<bits/stdc++.h>
using namespace std;
 
// Function to find place value
int placeValue(int N, int num)
{
    int total = 1, value = 0, rem = 0;
    while (true)
    {
        rem = N % 10;
        N = N / 10;
 
        if (rem == num)
        {
            value = total * rem;
            break;
        }
        total = total * 10;
    }
    return value;
}
 
// Driver Code
int main()
{
 
    // Digit, which we want
    // to find place value.
    int D = 5;
 
    // Number from where we
    // want to find place value.
    int N = 85932;
 
    cout << (placeValue(N, D));
}
 
// This code is contributed by Ritik Bansal

Java

// Java implementation to find
// place value of a number
 
import java.util.*;
import java.io.*;
import java.lang.*;
 
class GFG {
 
    // function to find place value
    static int placeValue(int N, int num)
    {
        int total = 1, value = 0, rem = 0;
        while (true) {
            rem = N % 10;
            N = N / 10;
 
            if (rem == num) {
                value = total * rem;
                break;
            }
 
            total = total * 10;
        }
        return value;
    }
 
    // Driver Code
    public static void main(String[] args)
    {
 
        // Digit, which we want
        // to find place value.
        int D = 5;
 
        // Number from where we
        // want to find place value.
        int N = 85932;
 
        System.out.println(placeValue(N, D));
    }
}

Python3

# Python3 implementation to find
# place value of a number
 
# Function to find place value
def placeValue(N, num):
     
    total = 1
    value = 0
    rem = 0
     
    while (True):
        rem = N % 10
        N = N // 10
 
        if (rem == num):
            value = total * rem
            break
        total = total * 10
         
    return value
 
# Driver Code
 
# Digit, which we want
# to find place value.
D = 5
 
# Number from where we
# want to find place value.
N = 85932
 
print(placeValue(N, D))
 
# This code is contributed by divyamohan123

C#

// C# implementation to find
// place value of a number
using System;
class GFG{
 
// function to find place value
static int placeValue(int N, int num)
{
    int total = 1, value = 0, rem = 0;
    while (true)
    {
        rem = N % 10;
        N = N / 10;
 
        if (rem == num)
        {
            value = total * rem;
            break;
        }
 
        total = total * 10;
    }
    return value;
}
 
// Driver Code
public static void Main()
{
 
    // Digit, which we want
    // to find place value.
    int D = 5;
 
    // Number from where we
    // want to find place value.
    int N = 85932;
 
    Console.Write(placeValue(N, D));
}
}
 
// This code is contributed by Code_Mech

Javascript

<script>
 
      // JavaScript implementation to find
      // place value of a number
 
      // Function to find place value
      function placeValue(N, num) {
        var total = 1,
          value = 0,
          rem = 0;
        while (true) {
          rem = N % 10;
          N = parseInt(N / 10);
 
          if (rem == num) {
            value = total * rem;
            break;
          }
          total = total * 10;
        }
        return value;
      }
 
      // Driver Code
 
      // Digit, which we want
      // to find place value.
      var D = 5;
 
      // Number from where we
      // want to find place value.
      var N = 85932;
      document.write(placeValue(N, D));
       
</script>
Producción: 

5000

 

Tiempo Complejidad: O(log N)  
Espacio auxiliar: O(1)
 

Publicación traducida automáticamente

Artículo escrito por iamdev_ y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *