How to check if a number is strong number or not in C#

1 Answer

0 votes
using System;

// Strong numbers are the numbers that the sum of factorial of its digits 
// is equal to the original number

// 145 is a strong number: 1 + 24 + 120 = 145

namespace ConsoleApplication_C_Sharp
{
    class Program
    {
        static void Main(string[] args)
        {
            int n = 145, reminder, sum = 0, tmp;

            tmp = n;

            while (n != 0)
            {
                reminder = n % 10;
                sum = sum + factorial(reminder);
                n /= 10;
            }
            if (sum == tmp)
                Console.WriteLine("{0} is a strong number", tmp);
            else
                Console.WriteLine("{0} is not a strong number", tmp);
        }

        static int factorial(int n)
        {
            int fact = 1;

            for (int i = 2; i <= n; i++)
                fact = fact * i;

            return fact;
        }
    }
}


/*
run:
 
145 is a strong number

*/

 



answered May 8, 2017 by avibootz

Related questions

1 answer 129 views
1 answer 183 views
1 answer 196 views
1 answer 572 views
1 answer 1,516 views
1 answer 515 views
1 answer 175 views
...