w3resource

C++ Exercises: Find the Deficient numbers between 1 to 100

C++ Numbers: Exercise-7 with Solution

Write a program in C++ to find the Deficient numbers (integers) between 1 and 100.

Visual Presentation:

C++ Exercises: Find the Deficient numbers between 1 to 100

Sample Solution:

C++ Code :

#include <bits/stdc++.h> // Include all standard libraries
using namespace std;

// Function to calculate the sum of divisors of a number 'n'
int getSum(int n) {
    int sum = 0;
    for (int i = 1; i <= sqrt(n); i++) { // Loop to find divisors up to square root of 'n'
        if (n % i == 0) { // Check if 'i' is a divisor of 'n'
            if (n / i == i) // If 'i' is a square root divisor of 'n', add 'i' to sum
                sum = sum + i;
            else { // Otherwise, add both 'i' and 'n/i' to sum
                sum = sum + i;
                sum = sum + (n / i);
            }
        }
    }
    sum = sum - n; // Subtract 'n' to get the sum of proper divisors
    return sum; // Return the sum of divisors
}

// Function to check if a number is deficient or not
bool checkDeficient(int n) {
    return (getSum(n) < n); // Return true if the sum of divisors is less than 'n'
}

int main() {
    int n, ctr = 0;
    cout << "\n\n The Deficient numbers between 1 to 100 are: \n";
    cout << " ------------------------------------------------\n";
    for (int j = 1; j <= 100; j++) { // Loop through numbers from 1 to 100
        n = j;
        // Check if the number is deficient and display it
        checkDeficient(n) ? cout << n << " " : cout << "";
        if (checkDeficient(n)) {
            ctr++; // Increment count if the number is deficient
        }
    }
    cout << endl << "The Total number of Deficient numbers are: " << ctr << endl; // Display the total count of deficient numbers
}

Sample Output:

 The Deficient numbers between 1 to 100 are:                           
 ------------------------------------------------                      
1 2 3 4 5 7 8 9 10 11 13 14 15 16 17 19 21 22 23 25 26 27 29 31 32 33 3
4 35 37 38 39 41 43 44 45 46 47 49 50 51 52 53 55 57 58 59 61 62 63 64 
65 67 68 69 71 73 74 75 76 77 79 81 82 83 85 86 87 89 91 92 93 94 95 97
 98 99                                                                 
The Total number of Deficient numbers are: 76 

Flowchart:

Flowchart: Find the Deficient numbers between 1 to 100

C++ Code Editor:

Contribute your code and comments through Disqus.

Previous: Write a program in C++ to check whether a given number is Deficient or not.
Next: Write a program in C++ to generate random integers in a specific range.

What is the difficulty level of this exercise?



Become a Patron!

Follow us on Facebook and Twitter for latest update.

It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.

https://w3resource.com/cpp-exercises/numbers/cpp-numbers-exercise-7.php