Write a Java program that accomplishes the following tasks:
Prompts users to input a number (must be an integer).
Calculates the factorial value of the number: for example, if the user keys in “5,” the program calculates the result based on the following formula: 5*4*3*2*1; if the input value is “3,” the program will calculate 3*2*1.
Display the result.
Users can press Y to continue or N to exit the program.
After you are done, submit the source code, along with screenshots.
Hint: check recursion part of the required reading.
You are required to apply recursion in the program.
The program should accomplish all the tasks in the assignment.