Факториал числа с клавиатуры

package sample;

import java.util.Scanner;

public class Homework2Lesson4 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);

		int n;
		System.out.println("Введите число n");
		n = sc.nextInt();

		int a = 1;

		if (n > 4 && n < 16) {
			for (int i = 1; i <= n; i++) {
				a = a * i;
				System.out.println("Факториал числа n " + a);
			}
		}else {
				System.out.println("Error");
			}

		}
	
}

Ваша решение частично верно. А именно 15! уже не помещается в int и вы получаете не верный ответ

package sample;

import java.util.Scanner;

public class Homework2Lesson4 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner sc = new Scanner(System.in);

		long n;
		System.out.println("Введите число n");
		n = sc.nextInt();

		long a = 1;

		if (n > 4 && n < 16) {
			for (int i = 1; i <= n; i++) {
				a = a * i;
				System.out.println("Факториал числа n " + a);
			}
		}else {
				System.out.println("Error");
			}

		}
	
}

Предложенное вами решение верно