Strong number



Strong number is sum of the factorial of each and every digit equal to the given number.



Example-1:


Input    : n = 145
Output   : Strong number    
Explain  : 1!+4!+5! = 145. So It's "Strong number"


Example-2:


Input    : n = 32
Output   : Not a Strong number  
Explain  : 3!+2!= 8. So It's not a "Strong number"







Solution




public class Main
{
    public static void main(String [] args)
    {
        int n = 145;

        int t = n;

        int sum = 0;

        while(t!=0)
        {
            sum = sum + factorial(t%10);

            t = t/10;
        }

        if(sum==n){

            System.out.print("Strong number");
        }

        else{
            System.out.print("Not a Strong number");
        }
    }

    public static int factorial(int num)
    {
        int f = 1;

        for(int i=1;i<=num;i++) 
        {
            f = f*i;
        }

        return f;
    }
}

n = 145

sum = 0

for i in str(n):

    a = i

    fact = 1

    for x in range(int(a),0,-1):

        fact *= x

    sum += fact

if(sum==int(n)):

    print("Strong number")

else:

    print("Not a strong number")



Output



Strong number