C++ Exercises: Check whether a number is Disarium or not
C++ Numbers: Exercise-18 with Solution
Write a program in C++ to check whether a number is Disarium or not.
Pictorial Presentation:
Sample Solution:
C++ Code :
#include<bits/stdc++.h>
using namespace std;
int DigiCount(int n)
{
int ctr_digi = 0;
int tmpx = n;
while (tmpx)
{
tmpx = tmpx/10;
ctr_digi++;
}
return ctr_digi;
}
bool chkDisarum(int n)
{
int ctr_digi = DigiCount(n);
int s = 0;
int x = n;
int pr;
while (x)
{
pr = x % 10;
s = s + pow(pr, ctr_digi--);
x = x/10;
}
return (s == n);
}
int main()
{
int dino;
cout << "\n\n Check whether a number is Disarium Number or not: \n";
cout << " ---------------------------------------------------\n";
cout << " Input a number: ";
cin >> dino;
if( chkDisarum(dino))
cout << " The given number is a Disarium Number."<<endl;
else
cout << " The given number is not a Disarium Number."<<endl;
return 0;
}
Sample Output:
Check whether a number is Disarium Number or not: --------------------------------------------------- Input a number: 9 The given number is a Disarium Number.
Flowchart:
C++ Code Editor:
Contribute your code and comments through Disqus.
Previous: Write a program in C++ to find the Happy numbers between 1 to 1000.
Next: Write a program in C++ to find Disarium numbers between 1 to 1000.
What is the difficulty level of this exercise?