sábado, 11 de julio de 2026

Ingresar un número máximo de 2 dígitos, si ingresa un número de 1 dígito que muestre mensaje "Tiene 1 dígito" y si tiene 2 dígitos que muestre mensaje "Tiene 2 dígitos" 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("Ingrese un número: ");
        int n = sc.nextInt();
        int c = 0;
        while(n >= 1){
            c++;
            n /= 10;
        }
        if(c == 1){
            System.out.println("Tiene 1 dígito");
        }else if(c == 2){
            System.out.println("Tiene 2 dígitos");
        }else{
            System.out.println("Por favor ingresar número máximo de 2 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.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
else --> use else para especificar un bloque de código a ejecutar, si la misma condición es falsa.
else if --> use else if para especificar una nueva condición para probar, si la primera condición es falsa.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.

Explicación del Código:

Este programa solicita al usuario un número de máximo 2 dígitos. Luego cuenta cuántos dígitos tiene el número y muestra un mensaje indicando si tiene 1 dígito, 2 dígitos o si el número ingresado supera el límite permitido.

Funcionamiento paso a paso

Código Explicación
Scanner sc = new Scanner(System.in); Crea un objeto Scanner para poder leer los datos que el usuario escribe desde el teclado.
System.out.print("Ingrese un número: "); Muestra un mensaje solicitando al usuario que ingrese un número.
int n = sc.nextInt(); Guarda el número ingresado por el usuario en la variable n.
int c = 0; Declara la variable c, que servirá como contador para saber cuántos dígitos tiene el número.
while(n >= 1) El ciclo while se ejecuta mientras el número sea mayor o igual a 1. En cada vuelta elimina un dígito del número y aumenta el contador.
c++; Incrementa el contador en uno. Cada incremento representa un dígito encontrado.
n /= 10; Divide el número entre 10 y elimina el último dígito. Por ejemplo:
  • 58 → 5
  • 5 → 0
Cuando el número llega a 0, el ciclo termina.
if(c == 1) Si el contador vale 1, significa que el número tiene un solo dígito y muestra: "Tiene 1 dígito".
else if(c == 2) Si el contador vale 2, significa que el número tiene dos dígitos y muestra: "Tiene 2 dígitos".
else Si el contador es mayor que 2, significa que el usuario ingresó un número con más de dos dígitos y muestra el mensaje: "Por favor ingresar número máximo de 2 dígitos".

Ejemplo de ejecución

Entrada Salida
8 Tiene 1 dígito
45 Tiene 2 dígitos
123 Por favor ingresar número máximo de 2 dígitos
Resumen: El programa utiliza un ciclo while para contar la cantidad de dígitos del número. Después, mediante una estructura if - else if - else, determina si el número tiene 1 dígito, 2 dígitos o más de 2, mostrando el mensaje correspondiente.

No hay comentarios.:

Publicar un comentario

Ingresar un número máximo de 2 dígitos, si ingresa un número de 1 dígito que muestre mensaje "Tiene 1 dígito" y si tiene 2 dígitos que muestre mensaje "Tiene 2 dígitos" en Java

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

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