A very simple program that I wrote using Java that will ask the user to give a number and then our program will compute it's factorial value using exception handling to check for invalid entries.
I am currently accepting programming and web development work kindly contact me in the following email address for further details. Thank you.
My email address are the following jakerpomperada@gmail.com and jakerpomperada@yahoo.com.
My telephone number at home here in Bacolod City, Negros Occidental Philippines is  +63 (034) 4335675.
Sample Program Output
Program Listing
FactorialNumber.java
package exceptiondemo;
import java.util.Scanner;
import java.util.InputMismatchException;
/**
 * NetBeans IDE 8.2
 * @author Mr. Jake R. Pomperada
 * March 20, 2018  Tuesday
 * Bacolod City, Negros Occidental
 */
public class FactorialNumber {
   public static void main(String[] args) {
        Scanner sc=new Scanner(System.in);
              int n, c, fact = 1;
               boolean goodData = false;
              while(!goodData) {
              try {
                System.out.print("FACTORIAL NUMBER SOLVER USING EXCEPTION");
                System.out.println("\n");
                System.out.print("Give a Number  : ");
  int num_value =sc.nextInt();
                 if (num_value < 0) {
                 System.out.println("Number should be non-negative.");
                 }
             else
                {
              for (c = 1; c <= num_value; c++) {
                  fact = (fact * c);
                 }
               System.out.println("Factorial value of  "
                        + num_value +" is  "+fact +".");
                }  
                System.out.println("\n");
  goodData = true;
              } catch(InputMismatchException e) {
                sc.next();
                System.out.println("You Entered a Bad Data." );
                System.out.println("Please Try Again." );
                System.out.println("\n");
                }
            }  // while loop end
 System.out.print("\t END OF PROGRAM");
        System.out.println("\n");
     }
}
