Código C++ – Números Perfectos

UN NUMERO PERFECTO ES CUANDO TODOS SUS DIVISORES MENORES SUMADOS DAN EL MISMO NUMERO.

Método 1:

// Codificado por: Beastieux
// Código fuente: Calcula números perfectos.
#include<iostream>
using namespace std;
int main() {
    int n = 1, x = 1, s = 0;
    
    while (n <= 10000) {
        while (x <= (n / 2)) {
            if (n % x == 0)
                s = s + x;
            x = x + 1;
        }
        if (n == s)
            cout << n << ", Es perfecto" << endl;
        n = n + 1; x = 1; s = 0;
    }

    //cin.ignore();
    return 0;
}

Este código C++ implementa un programa para calcular y mostrar los números perfectos hasta un límite dado (en este caso, hasta 10000). Un número perfecto es un número natural que es igual a la suma de sus divisores propios positivos (excluyendo al número en sí mismo). Aquí tienes una descripción detallada del funcionamiento del código:

  1. Incluye la biblioteca iostream para permitir la entrada y salida estándar.
  2. Define el espacio de nombres std para que no sea necesario usar std:: antes de las funciones y objetos de la biblioteca estándar.
  3. Define la función main(), que es el punto de entrada del programa.
  4. Declara tres variables enteras: n (número que se va a evaluar si es perfecto), x (contador para los divisores) y s (suma de divisores).
  5. Utiliza dos bucles while anidados para generar los números perfectos hasta 10000.
    • El bucle exterior (primero) itera a través de los números desde 1 hasta 10000 (representados por n).
    • El bucle interior (segundo) itera a través de los valores desde 1 hasta n / 2 (representados por x).
  6. En el bucle interior, verifica si n es divisible por x. Si es así, agrega el valor de x a la suma s.
  7. Después de completar el bucle interior, verifica si n es igual a s. Si lo es, significa que n es un número perfecto y se muestra en la consola junto con el mensaje “Es perfecto”.
  8. Luego, aumenta el valor de n en 1, restablece el valor de x a 1 y restablece la suma s a 0 para la siguiente iteración.
  9. El bucle exterior continúa iterando hasta que n alcanza 10000.
  10. El programa muestra los números perfectos encontrados en la consola.
  11. La línea return 0 indica que el programa se ejecutó correctamente y finaliza.

Método 2:

// Codificado por: Beastieux
// Código fuente: Números Perfectos.
#include<iostream>
using namespace std;
int main() {
    int a = 0, b = 1, c = 1;
    
    while (c < 100) {
        cout << c << endl;
        c = a + b;
        a = b;
        b = c;
    }

    return 0;
}

Pueder ir al artículo principal:

Códigos Sencillos hechos en C++

5 thoughts on “Código C++ – Números Perfectos

Deja un comentario