# Geeksforgeeks Solution For " Perfect Number "

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 answers
What 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

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.

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:-

Previous Post
Next Post

#### post written by: Ghanendra Yadav

Hi, I’m Ghanendra Yadav, SEO Expert, Professional Blogger, Programmer, and UI Developer. Get a Solution of More Than 500+ Programming Problems, and Practice All Programs in C, C++, and Java Languages. Get a Competitive Website Solution also Ie. Hackerrank Solutions and Geeksforgeeks Solutions. If You Are Interested to Learn a C Programming Language and You Don't Have Experience in Any Programming, You Should Start with a C Programming Language, Read: List of Format Specifiers in C.