Contar el numero de dígitos en Java

Hola a todos, hoy os voy a explicar como podemos contar cuantos dígitos tiene un número.

Para cierto algoritmos, necesitaremos saber cuantos dígitos tiene un número. Para ello os proporciono una función que dado un número nos devuelva cuantos dígitos tiene.

La funcionalidad seria la siguiente:

  • Le damos un número por parámetro.
  • Si ese número es 0, devuelvo 1.
  • Si no es 0, recorremos del número dividiéndolo entre 10 hasta llegar a 0. Para evitar problemas con negativos, lo pasaremos a absoluto.
  • Cada vez que dividamos entre 10, aumentamos en 1 nuestro contador.

La función es la siguiente:


public static int cuentaCifras(int num) {

    int contador = 0;

    // Si el numero es 0, tiene una cifra
    if (num == 0) {
        contador = 1;
    } else {
        // Vamos dividiendo entre 10 hasta que lleguemos a 0
        for (int i = Math.abs(num); i > 0; i /= 10) {
            contador++;
        }

    }

    return contador;
}

Os dejo el código completo:



import java.util.Scanner;

public class CuentaCifras {

    public static void main(String[] args) {
        
        Scanner sn = new Scanner(System.in);
        
        System.out.println("Introduce un numero");
        int numero = sn.nextInt();
        
        int cifras = cuentaCifras(numero);
        
        System.out.println("Numero de cifras: " + cifras);
        
    }

    public static int cuentaCifras(int num) {

        int contador = 0;

        if (num == 0) {
            contador = 1;
        } else {

            for (int i = Math.abs(num); i > 0; i /= 10) {
                contador++;
            }

        }

        return contador;
    }

}


Veamos algunos ejemplos:

Espero que os sea de ayuda. Si tenéis dudas, preguntad. Estamos para ayudarte.

Compartir

Deja una respuesta

Tu dirección de correo electrónico no será publicada.