import java.util.Scanner; public class FactorialCalculator { public static void main(String[] args) { // Create a Scanner object for user input Scanner scanner = new Scanner(System.in); System.out.print("Enter a non-negative integer: "); // Validate user input if (!scanner.hasNextInt()) { System.out.println("Invalid input. Please enter a valid integer."); scanner.close(); return; } int number = scanner.nextInt(); // Check if the number is non-negative if (number < 0) { System.out.println("Factorial is not defined for negative numbers."); } else { // Calculate factorial long factorial = 1; // Use long to handle large results for (int i = 1; i <= number; i++) { factorial *= i; } // Display the result System.out.println("The factorial of " + number + " is: " + factorial); } // Close the scanner scanner.close(); } }