martes, 7 de julio de 2026

Pedir un número y determine cuántos dígitos son divisible entre tres en Java

Código del ejercicio:

package ejercicio;

import java.util.Scanner;

public class Ejercicio {

    public static void main(String[] args) {
        int c = 0, n;
        Scanner sc = new Scanner(System.in);
        System.out.print("Ingrese un número: ");
        n = sc.nextInt();
        while(n > 0){
            if((n % 10) % 3 == 0){
                c++;
            }
            n /= 10;
        }
        System.out.println("La cantidad de dígitos divisible entre tres son: " + c);
    }

}

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.
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 ( > ) devuelve true si el operando izquierdo es mayor que el operando derecho.
if --> use if para especificar un bloque de código que se ejecutará, si una condición especificada es verdadera.
% --> el operador de modulo ( % ) devuelve el resto de la división.
== --> el operador de igualdad ( == ) regresa true si sus operandos son iguales, false en caso contrario.
/= --> 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.
++ --> el operador de incremento ( ++ ) incrementa (suma uno a) su operando y devuelve un valor.

Explicación del Código:

Este programa solicita un número entero al usuario y revisa cada uno de sus dígitos. Al finalizar, muestra cuántos de esos dígitos son divisibles entre 3.

Código

package ejercicio;

import java.util.Scanner;

public class Ejercicio {

    public static void main(String[] args) {
        int c = 0, n;
        Scanner sc = new Scanner(System.in);
        System.out.print("Ingrese un número: ");
        n = sc.nextInt();

        while(n > 0){
            if((n % 10) % 3 == 0){
                c++;
            }
            n /= 10;
        }

        System.out.println("La cantidad de dígitos divisible entre tres son: " + c);
    }

}

Explicación paso a paso

1. Declaración de variables

int c = 0, n;

Se crean dos variables:

  • c: almacena la cantidad de dígitos divisibles entre 3. Comienza en 0.
  • n: guarda el número ingresado por el usuario.

2. Crear el objeto Scanner

Scanner sc = new Scanner(System.in);

Se crea un objeto Scanner para poder leer datos escritos desde el teclado.

3. Pedir el número

System.out.print("Ingrese un número: ");
n = sc.nextInt();

Se muestra un mensaje en pantalla y luego se guarda el número ingresado en la variable n.

4. Recorrer todos los dígitos

while(n > 0)

El ciclo while se ejecuta mientras el número sea mayor que cero. En cada repetición se analiza un solo dígito.

5. Obtener el último dígito

n % 10

El operador % obtiene el último dígito del número.

Ejemplo:

548 % 10 = 8
123 % 10 = 3
987 % 10 = 7

6. Verificar si el dígito es divisible entre 3

if((n % 10) % 3 == 0){
    c++;
}

Primero se obtiene el último dígito con n % 10. Después se verifica si ese dígito dividido entre 3 deja residuo cero.

Si es divisible entre 3, el contador c aumenta en uno.

Ejemplo:

  • 9 → divisible entre 3 ✔
  • 6 → divisible entre 3 ✔
  • 3 → divisible entre 3 ✔
  • 0 → divisible entre 3 ✔
  • 5 → no es divisible ✘
  • 8 → no es divisible ✘

7. Eliminar el último dígito

n /= 10;

Esta instrucción elimina el último dígito del número para poder revisar el siguiente.

Ejemplo:

548 → 54
54 → 5
5 → 0

Cuando el número llega a 0, el ciclo termina.

8. Mostrar el resultado

System.out.println("La cantidad de dígitos divisible entre tres son: " + c);

Finalmente se imprime la cantidad de dígitos que son divisibles entre 3.

Ejemplo de ejecución

Ingrese un número: 93642

La cantidad de dígitos divisible entre tres son: 3

Explicación:

  • 9 ✔ divisible entre 3
  • 3 ✔ divisible entre 3
  • 6 ✔ divisible entre 3
  • 4 ✘ no es divisible
  • 2 ✘ no es divisible

Por lo tanto, el programa muestra:

La cantidad de dígitos divisible entre tres son: 3

Resumen

El programa pide un número, analiza cada uno de sus dígitos comenzando por el último, verifica cuáles son divisibles entre 3 utilizando el operador módulo (%), cuenta esos dígitos y finalmente muestra el total encontrado.

No hay comentarios.:

Publicar un comentario

Contar los espacios de una cadena en Java

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

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