GeeksforGeeks Solution For School Domain .Below You Can Find The Solution Of Basic ,Easy ,Medium ,Hard .You Can Also Direct Submit Your Solution to Geeksforgeeks Same Problem .You Need to login then you can submit you answersWhat Is Perfect Number ?
Perfect Number Is a Positive Integer ( Greater Than Zero ) .When We Divide Then Its Divisors Sum is Equal to Number
The Smallest perfect Number Is 6
Like :- 6 Is a Smallest Number And Divisors is 1 ,2 ,3 The sum of its Divisors Is 1 + 2 +3 =6 .
Other Perfect Numbers Are 28 ,496 ,8128 ,33550336
For More Information Of Perfect Number Wikipedia
Problem :- Check if a given number is perfect or not. A number is perfect if sum of factorial of its digit is equal to the given number. For example 145 is a Perfect Number because 1! + 4! + 5! = 145
Input:
The first line of input contains an integer T denoting the number of test cases. Then T test cases follow. The next T lines will contain an integer N.
Output:
Corresponding to each test case, in a new line, print "Perfect " if it follow above condition else print "Not Perfect" without quotes.
Submit Your Solution :- Click Here
Solution :-
#include <iostream>
using namespace std;
int fact1(int res);
int main()
{
int t;
cin>>t;
while(t--)
{
int n,n1,i,res,fact=1,sum=0,tmp;
cin>>n;
n1=n;
while(n!=0)
{
res=n%10;
tmp=fact1(res);
sum+=tmp;
n/=10;
}
if(n1==sum)
cout<<"Perfect\n";
else
cout<<"Not Perfect\n";
}
return 0;
}
int fact1(int res)
{
int i,fact=1;
for(i=1;i<=res;i++)
{
fact=fact*i;
}
return fact;
}
Output:-
0 Comments: