57: Write a program in C++ to check if the user entered a perfect number or not using for, while and do while loop

 

// Write a program in C++ to check if the user entered a perfect number or not


#include <iostream>
using namespace std;
int main()
{
    int num;
    cout << "\nEnter a number: ";
    cin >> num;
    cout << "\n**************************************************************\n\n";

    int a = 0;
    cout << "Factors of " << num << " are: ";
    for (int i = 1; i < num; i++)
    {
        if (num % i == 0)
        {
            cout << i << ' ';
            a = a + i;
        }
    }
    if (a == num)
    {
        cout << "\nThe number " << num << " is a Perfect number \n";
    }
    else
    {
        cout << "\nThe number " << num << " is not a Perfect number \n";
    }
    cout << "\n**************************************************************\n\n";

    int j = 1, b = 0;
    cout << "The factors of " << num << " are: ";
    while (j < num)
    {
        if (num % j == 0)
        {
            cout << j << ' ';
            b = b + j;
        }
        j++;
    }
    if (b == num)
    {
        cout << "\nThe number " << num << " is a perfect number \n";
    }
    else
        cout << "\nThe number " << num << " is not a perfect number \n";

    cout << "\n**************************************************************\n\n";

    int k = 1, c = 0;
    cout << "The factors of " << num << " are: ";
    do
    {
        if (num % k == 0)
        {
            cout << k << " ";
            c = c + k;
        }
        k++;
    } while (k < num);

    if (c == num)
    {
        cout << "\nThe number " << num << " is a perfect number \n";
    }
    else
        cout << "\nThe number " << num << " is not a perfect number \n";

    cout << "\n**************************************************************\n\n";
   
    return 0;
}



Comments