## 1. Introduction

A Strong Number (or Digital Number) is a number that is equal to the sum of the factorial of its digits. For example, 145 is a strong number, as 1! + 4! + 5! = 1 + 24 + 120 = 145. In this blog post, we will create a Java program to check whether a given number is a strong number or not.

## 2. Program Steps

1. Define a class named StrongNumber.

2. Inside this class, define the main method.

3. Inside the main method, create a Scanner object to take user input.

4. Prompt the user to enter a number.

5. Declare and initialize variables to store the original number, the sum of factorials of the digits, and the remainder.

6. Create a loop to calculate the sum of the factorial of each digit.

7. Compare the calculated sum with the original number.

8. Print whether the number is a strong number or not.

## 3. Code Program

``````import java.util.Scanner; // Import Scanner class

public class StrongNumber { // Step 1: Define a class named StrongNumber

public static void main(String[] args) { // Step 2: Define the main method

Scanner sc = new Scanner(System.in); // Step 3: Create Scanner object to read input

System.out.println("Enter a number: "); // Step 4: Prompt the user to enter a number
int num = sc.nextInt(); // Read the user input

int originalNum = num; // Step 5: Store the original number
int sum = 0; // Initialize sum to 0

// Step 6: Create a loop to calculate the sum of the factorial of each digit
while (num > 0) {
int digit = num % 10; // Get the last digit
int factorial = 1; // Initialize factorial to 1
for (int i = 1; i <= digit; i++) {
factorial *= i; // Calculate factorial of the digit
}
sum += factorial; // Add the factorial to the sum
num /= 10; // Remove the last digit
}

// Step 7: Compare the calculated sum with the original number
if (originalNum == sum) {
System.out.println(originalNum + " is a Strong Number."); // Step 8: Print the result
} else {
System.out.println(originalNum + " is not a Strong Number."); // Step 8: Print the result
}
}
}
``````

### Output:

```Enter a number:
145
145 is a Strong Number.
```

## 4. Step By Step Explanation

Step 1: A class named StrongNumber is defined.

Step 2: The main method is defined inside the StrongNumber class.

Step 3: A Scanner object is created to read the user input.

Step 4: The user is prompted to enter a number.

Step 5: The original number is stored and variables for sum and factorial are initialized.

Step 6: A while loop is used to calculate the sum of the factorial of each digit of the number.

Step 7: The calculated sum is compared with the original number.

Step 8: The program prints whether the original number is a Strong Number or not.