miércoles, 3 de junio de 2026

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

Código del ejercicio:

#include <iostream>
#include <clocale>

using namespace std;

int main()
{
    setlocale(LC_CTYPE, "Spanish");
    int c = 0, n;
    cout<<"Ingrese un número: "; cin>>n;
    while(n > 0){
        if((n % 10) % 3 == 0){
            c++;
        }
        n /= 10;
    }
    cout<<"La cantidad de dígitos divisible entre tres son: "<<c;
    return 0;
}

Definición de los códigos del ejercicio:

#include <iostream> --> significa flujo de entrada-salida estándar. Este archivo de encabezado contiene definiciones de objetos como cin, cout, cerr, etc.
#include <clocale> --> especificador de configuración regional.
using namespace std; --> un espacio de nombres es una colección de nombres o identificadores relacionados (funciones, clases, variables) que ayudan a separar estos identificadores de identificadores similares en otros espacios de nombres o en el espacio de nombres global. Los identificadores de la biblioteca estándar de C++ se definen en un espacio de nombres llamado std.
int --> dato entero de 32 bits.
main() --> la función main() es el punto de entrada de cualquier programa C++. Es el punto en el que se inicia la ejecución del programa. Cuando se ejecuta un programa C++, el control de ejecución va directamente a la función main(). Cada programa C++ tiene una función main().
return 0; --> devolver 0 en la función principal significa que el programa se ejecutó correctamente.
setlocale(); --> sirve para configurar nuestro programa acorde a los parámetros locales de la computadora donde se ejecuta el programa, uno de estos parámetros es el idioma.
LC_CTYPE --> selecciona la categoría de clasificación de caracteres del entorno local.
setlocale(LC_CTYPE, "Spanish"); --> dentro de las comillas del segundo parámetro colocaremos la palabra "Spanish" para que así se utilicen los parámetros hispanos por defecto.
cout<<""; --> se utiliza para mostrar la salida al dispositivo de salida estándar, es decir, monitor.
cin>> --> se utiliza para aceptar la entrada del dispositivo de entrada estándar, es decir, el 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 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.

Explicación del Código:

¿Qué hace el programa?

Este programa pide al usuario ingresar un número entero. Luego analiza cada uno de sus dígitos y cuenta cuántos son divisibles entre 3.

Ejemplo:

  • Si el número es 9364
  • 9 es divisible entre 3 ✔
  • 3 es divisible entre 3 ✔
  • 6 es divisible entre 3 ✔
  • 4 no es divisible entre 3 ✘

Resultado final: 3 dígitos divisibles entre 3.

Explicación simple de cada parte del código

1. Librerías

#include <iostream>
#include <clocale>

iostream permite usar entrada y salida de datos mediante cin y cout.

clocale permite configurar caracteres en español.


2. Espacio de nombres

using namespace std;

Permite usar funciones estándar sin escribir std::.


3. Función principal

int main()

Es donde inicia la ejecución del programa.


4. Configurar idioma

setlocale(LC_CTYPE, "Spanish");

Configura el programa para mostrar caracteres en español.


5. Variables

int c = 0, n;

c almacena la cantidad de dígitos divisibles entre 3.

n guarda el número ingresado por el usuario.


6. Entrada de datos

cout << "Ingrese un número: ";
cin >> n;

Se solicita al usuario ingresar un número.


7. Ciclo while

while(n > 0)

Repite el proceso mientras el número sea mayor que cero.

Sirve para recorrer todos los dígitos del número.


8. Obtener el último dígito

n % 10

Obtiene el último dígito del número.

Ejemplo:

  • 9364 % 10 = 4

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

if((n % 10) % 3 == 0)

Primero obtiene el último dígito.

Después verifica si ese dígito es divisible entre 3.

Si el residuo es 0, entonces sí es divisible entre 3.


10. Incrementar contador

c++;

Aumenta en uno la cantidad de dígitos divisibles entre 3.


11. Eliminar el último dígito

n /= 10;

Divide el número entre 10 para eliminar el último dígito.

Ejemplo:

  • 9364 → 936
  • 936 → 93
  • 93 → 9

12. Mostrar resultado

cout << "La cantidad de dígitos divisible entre tres son: " << c;  

Muestra cuántos dígitos del número son divisibles entre 3.


13. Finalizar programa

return 0;

Indica que el programa terminó correctamente.

No hay comentarios.:

Publicar un comentario

Convertir millas a pies en HTML y JavaScript

Código del ejercicio: <! DOCTYPE html > < html lang = "es" > < head >     < meta charset = ...

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