Viết chương trình tính tổng giai thừa java
Đề bài: Viết chương trình sử dụng ngôn ngữ lập trình Java thực hiện tính S = 1! + 2! + 3! + 4! + 5! Code tham khảo dưới đây được viết trên JDK ver 8.x: Các thẻ: lap trinhLập trình Java Có thể bạn sẽ thích…Trong bài tập này chúng ta sẽ thực hiện chương trình tính giai thừa trong Java. Đây là một dạng bài tập cơ bản giúp các bạn nắm vững về các vòng lặp trong Java. Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức. Chúng ta sẽ viết ba chương trình java để tìm giai thừa của một số.
Trước khi đi qua chương trình, hãy hiểu thế nào là giai thừa: Giai thừa của một số n được ký hiệu là n! và giá trị của n! là: 1 * 2 * 3 * … *(n-1) * n. Ví dụ 1: Chương trình tính giai thừa trong Java sử dụng vòng lặp For.Trong ví dụ này chúng ta sẽ tinh giai thừa của số number = 5, sau đó gán kết quả cho biến fact. Và cuối cùng là hiển thị fact ra màn hình kết quả. Bài viết này được đăng tại [free tuts .net] public class GiaiThua { public static void main(String[] args) { int number = 5; long fact = 1; for(int i = 1; i <= number; i++) { fact = fact * i; } System.out.println("Giai thừa của "+number+" là: "+fact); System.out.println(); System.out.println("----------------------------"); System.out.println("Chương trình này được đăng tại Freetuts.net"); } } Kết quả: Ví dụ 2: Chương trình tính giai thừa trong Java sử dung vòng lặp While.Cũng tương tự như ví dụ trên, chúng ta sẽ dùng vòng lặp While để tính giai thừa cho số number = 5, rồi sau đó hiển thị kết qua ra màn hình. public class GiaiThua { public static void main(String[] args) { int number = 5; long fact = 1; int i = 1; while(i<=number) { fact = fact * i; i++; } System.out.println("Giai thừa của "+number+" là: "+fact); System.out.println(); System.out.println("----------------------------"); System.out.println("Chương trình này được đăng tại Freetuts.net"); } } Kết quả: Ví dụ 3: Chương trình tính giai thừa trong Java với đầu vào từ người dùng.Trong ví dụ này chúng ta sẽ dùng vòng lặp For để tính giai thừa của một số mà do người dùng nhập vào, bằng cách sử dụng lớp Scanner. import java.util.Scanner; public class GiaiThua { public static void main(String[] args) { int number; System.out.println("Nhập vào số cần tính: "); Scanner scanner = new Scanner(System.in); number = scanner.nextInt(); scanner.close(); long fact = 1; int i = 1; while(i<=number) { fact = fact * i; i++; } System.out.println("Giai thừa của "+number+" là: "+fact); System.out.println("----------------------------"); System.out.println("Chương trình này được đăng tại Freetuts.net"); } } Kết quả: Như vậy là chúng ta đã thực hiện xong chương trình tính giai thừa trong Java. Chúc các bạn thực hiện thành công!!! Viết chương trình tính giai thừa của một số nguyên. Định nghĩ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 Lời giảiCó 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 đệ quyVí 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 { /** * main * * @author viettuts.vn * @param args */ public static void main(String[] args) { int a = 5; int b = 0; int c = 10; 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)); } /** * tinh giai thua * * @author viettuts.vn * @param n: so nguyen duong * @return giai thua cua so n */ public static long tinhGiaithua(int n) { long giai_thua = 1; if (n == 0 || n == 1) { return giai_thua; } else { for (int i = 2; i <= n; i++) { giai_thua *= i; } return giai_thua; } } } 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 đệ quyVí dụ chương trình tính giai thừa trong java có sử dụng phương pháp đệ quy: public class GiaiThuaDemo2 { /** * main * * @author viettuts.vn * @param args */ public static void main(String[] args) { int a = 5; int b = 0; int c = 10; 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)); } /** * tinh giai thua * * @author viettuts.vn * @param n: so nguyen duong * @return giai thua cua so n */ public static long tinhGiaithua(int n) { if (n > 0) { return n * tinhGiaithua(n - 1); } else { return 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 |