Định nghĩa giai thừa: giai thừa của 1 số là tích các số liên tiếp từ 1 đến số đó. Trường hợp đặc biệt, giai thừa của 0 và 1 là 1.
Ví dụ: giai thừa của 5 là 1*2*3*4*5 = 120
Có 2 cách để viết chương trình tính giai thừa trong java:
- Tính giai thừa không sử dụng đệ quy
- Tính giai thừ có sử dụng đệ quy
Tính giai thừa không sử dụng đệ quy
Ví dụ chương trình tính giai thừa trong java không sử dụng phương pháp đệ quy:
public class GiaiThuaDemo1 { |
public static void main(String[] args) { |
System.out.println( "Giai thừa của " + a + " là: " |
+ GiaiThuaDemo1.tinhGiaithua(a)); |
System.out.println( "Giai thừa của " + b + " là: " |
+ GiaiThuaDemo1.tinhGiaithua(b)); |
System.out.println( "Giai thừa của " + c + " là: " |
+ GiaiThuaDemo1.tinhGiaithua(c)); |
* @param n: so nguyen duong |
* @return giai thua cua so n |
public static long tinhGiaithua( int n) { |
for ( int i = 2 ; i <= n; i++) { |
Kết quả:
Giai thừa của 5 là: 120
Giai thừa của 0 là: 1
Giai thừa của 10 là: 3628800
Tính giai thừa có sử dụng đệ quy
Ví dụ chương trình tính giai thừa trong java có sử dụng phương pháp đệ quy:
public class GiaiThuaDemo2 { |
public static void main(String[] args) { |
System.out.println( "Giai thừa của " + a + " là: " |
+ GiaiThuaDemo2.tinhGiaithua(a)); |
System.out.println( "Giai thừa của " + b + " là: " |
+ GiaiThuaDemo2.tinhGiaithua(b)); |
System.out.println( "Giai thừa của " + c + " là: " |
+ GiaiThuaDemo2.tinhGiaithua(c)); |
* @param n: so nguyen duong |
* @return giai thua cua so n |
public static long tinhGiaithua( int n) { |
return n * tinhGiaithua(n - 1 ); |
Kết quả:
Giai thừa của 5 là: 120
Giai thừa của 0 là: 1
Giai thừa của 10 là: 3628800
0 comments:
Post a Comment