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 to 100.
Pictorial Presentation:
Sample Solution:
C++ Code :
#include <bits/stdc++.h>
using namespace std;
int getSum(int n)
{
int sum = 0;
for (int i=1; i<=sqrt(n); i++)
{
if (n%i==0)
{
if (n/i == i)
sum = sum + i;
else
{
sum = sum + i;
sum = sum + (n / i);
}
}
}
sum = sum - n;
return sum;
}
bool checkDeficient(int n)
{
return (getSum(n) < 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++)
{
n=j;
checkDeficient(n)? cout << n<<" ": cout << "";
if(checkDeficient(n))
{ctr++;}
}
cout << endl<<"The Total number of Deficient numbers are: "<<ctr << endl;
}
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:
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?