martes, 30 de junio de 2026

Contar la cantidad de dígitos que tiene un número en Java

Código del ejercicio:

package ejercicio;

import java.util.Scanner;

public class Ejercicio {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Introduzca un número: ");
        int num = sc.nextInt();
        int contador = 0;
        while(num >= 1){
            contador++;
            num /= 10;
        }
        System.out.println("El número ingresado tiene " + contador + " dígitos.");
    }

}

Definición de los códigos del ejercicio:

import java.util.Scanner; --> Importación explícita de Scanner.
Scanner sc = new Scanner(System.in); --> objeto de Scanner con nombre sc.
Scanner --> clase Scanner nos permite ingresar datos por teclado.
new --> palabra reservada que instancia un objeto de la clase Scanner.
System.in --> parámetro que indica de donde proceden los datos, en este caso del teclado.
System.out.print() --> imprime el texto en la consola y el cursor permanece al final del texto en la consola.
System.out.println() --> imprime el texto en la consola y el cursor permanece al comienzo de la siguiente línea en la consola.
int --> dato entero de 32 bits.
nextInt() --> lee un número entero desde consola (teclado).
while --> el ciclo while recorre un bloque de código siempre que una condición específica sea verdadera.
>= --> el operador mayor que o igual ( >= ) devuelve true si el operando izquierdo es mayor o igual que el operando derecho, y en false caso contrario.
++ --> el operador de incremento ( ++ ) incrementa (suma uno a) su operando y devuelve un valor.
/= --> el operador de asignación de división ( /= ) divide el valor del operando derecho de una variable y asigna el resultado a la variable.
+ --> el operador ( + ) concatena variables de cadena.
String --> dato de tipo cadena de texto.
nextLine() --> se utiliza para obtener la entrada del usuario.
length() --> devuelve la longitud de una cadena.

Explicación del Código:

Este programa solicita al usuario un número entero y calcula cuántos dígitos tiene. Para lograrlo, divide el número entre 10 repetidamente hasta que el valor llegue a 0, contando cuántas veces realiza esa operación.

1. Declaración del paquete

package ejercicio;

Indica el paquete donde se encuentra almacenada la clase del programa.

2. Importar Scanner

import java.util.Scanner;

Importa la clase Scanner, que permite leer datos ingresados desde el teclado.

3. Declaración de la clase

public class Ejercicio {

Crea la clase principal donde estará todo el programa.

4. Método principal

public static void main(String[] args) {

Es el punto donde comienza la ejecución del programa.

5. Crear el objeto Scanner

Scanner sc = new Scanner(System.in);

Crea un objeto que permite leer el número ingresado por el usuario.

6. Solicitar el número

System.out.print("Introduzca un número: ");

Muestra un mensaje para pedir al usuario que escriba un número.

7. Leer el número

int num = sc.nextInt();

Guarda el número ingresado en la variable num.

8. Inicializar el contador

int contador = 0;

Crea una variable que almacenará la cantidad de dígitos del número.

9. Ciclo while

while(num >= 1){
    contador++;
    num /= 10;
}

Este ciclo se ejecuta mientras el número sea mayor o igual a 1.

  • contador++; aumenta el contador en uno.
  • num /= 10; divide el número entre 10 y elimina el último dígito.
  • El proceso se repite hasta que el número llegue a 0.

10. Mostrar el resultado

System.out.println("El número ingresado tiene " + contador + " dígitos.");

Muestra en pantalla la cantidad de dígitos que tiene el número ingresado.

11. Cierre del método y de la clase

}
}

Finalizan el método main y la clase del programa.

Ejemplo de ejecución

Si el usuario ingresa:

Introduzca un número: 5839

El ciclo realiza las siguientes divisiones:

5839 → 583 → 58 → 5 → 0

Como el ciclo se ejecutó 4 veces, el resultado será:

El número ingresado tiene 4 dígitos.

Código del ejercicio: Otra forma de hacer

package ejercicio;

import java.util.Scanner;

public class Ejercicio {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.print("Introduzca un número: ");
        String num = sc.nextLine();
        int contador = num.length();
        System.out.println("El número ingresado tiene " + contador + " dígitos.");
    }

}

Definición de los códigos del ejercicio:

import java.util.Scanner; --> Importación explícita de Scanner.
Scanner sc = new Scanner(System.in); --> objeto de Scanner con nombre sc.
Scanner --> clase Scanner nos permite ingresar datos por teclado.
new --> palabra reservada que instancia un objeto de la clase Scanner.
System.in --> parámetro que indica de donde proceden los datos, en este caso del teclado.
System.out.print() --> imprime el texto en la consola y el cursor permanece al final del texto en la consola.
System.out.println() --> imprime el texto en la consola y el cursor permanece al comienzo de la siguiente línea en la consola.
int --> dato entero de 32 bits.
nextInt() --> lee un número entero desde consola (teclado).
while --> el ciclo while recorre un bloque de código siempre que una condición específica sea verdadera.
>= --> el operador mayor que o igual ( >= ) devuelve true si el operando izquierdo es mayor o igual que el operando derecho, y en false caso contrario.
++ --> el operador de incremento ( ++ ) incrementa (suma uno a) su operando y devuelve un valor.
/= --> el operador de asignación de división ( /= ) divide el valor del operando derecho de una variable y asigna el resultado a la variable.
+ --> el operador ( + ) concatena variables de cadena.
String --> dato de tipo cadena de texto.
nextLine() --> se utiliza para obtener la entrada del usuario.
length() --> devuelve la longitud de una cadena.

Explicación del Código:

import java.util.Scanner;

Importa la clase Scanner, que permite leer los datos que el usuario escribe desde el teclado.

public class Ejercicio {

Declara la clase principal llamada Ejercicio, donde se encuentra todo el programa.

public static void main(String[] args) {

Es el método principal. Aquí comienza la ejecución del programa.

Scanner sc = new Scanner(System.in);

Crea un objeto Scanner llamado sc, que sirve para leer los datos ingresados por el usuario.

System.out.print("Introduzca un número: ");

Muestra un mensaje en pantalla para pedir al usuario que escriba un número.

String num = sc.nextLine();

Lee el número ingresado y lo guarda como una cadena de texto (String), permitiendo contar fácilmente la cantidad de caracteres.

int contador = num.length();

El método length() devuelve la cantidad de caracteres que tiene la cadena. Esa cantidad corresponde al número de dígitos ingresados.

System.out.println("El número ingresado tiene " + contador + " dígitos.");

Muestra en pantalla la cantidad de dígitos que tiene el número ingresado por el usuario.

No hay comentarios.:

Publicar un comentario

Convertir metros a kilómetros en Java

Código del ejercicio: package ejercicio; import java.util.Scanner; public class Ejercicio {     public static void main...

Copyright ©2025 Ejercicios de programación. Todos los derechos reservados. ❤️