Java - Viết chương trình tính giai thừa của một số

Viết chương trình nhập vào 1 số nguyên dương bất kỳ từ bàn phím. Sau đó tính và in ra giai thừa của số đó.

Yêu cầu: Chương trình phải kiểm tra và yêu cầu người dùng nhập vào n >= 0.

Bài giải

-------------------- ######## --------------------

Bài giải.
package vong_lap_do_while;

import java.util.Scanner;

public class TinhGiaiThua {

	public static void main(String[] args) {
		int number, temp = 1;
		long giaiThua = 1;
		
		Scanner scanner = new Scanner(System.in);
		
		do {
			System.out.println("Nhập vào 1 số bất kỳ: ");
			number = scanner.nextInt();
		} while ((number <= 0) || (number > 10));
		
		/*
		 * Nếu giá trị biến temp còn nhỏ hơn hoặc bằng number
		 * thì còn thực hiện đoạn lệnh bên trong while
		 */
		while (temp <= number) {
			giaiThua *= temp;
			temp++;
		}
		
		System.out.println(number + "! = " + giaiThua);
	}

}
Kết quả sau khi biên dịch chương trình:

Trong chương trình trên, tôi sử dụng vòng lặp do - while để kiểm tra số nhập vào có thỏa mãn điều kiện là 1 số nguyên dương hay không. Nếu số người dùng nhập vào không phải là số nguyên dương thì chương trình sẽ yêu cầu người dùng phải nhập lại:

Nguồn: freetuts.net