Viết chương trình tính giá trị của biểu thức K = 1 + 1/2! + 1/3! + ... + 1/n! với n là số bất kỳ được nhập từ bàn phím (n > 0).
Yêu cầu: Chương trình phải kiểm tra số n nhập vào có phải là số nguyên dương không, nếu không thì yêu cầu người dùng nhập lại. Kết quả làm tròn đến 2 chữ số thập phân.
Bài giải
-------------------- ######## --------------------
Bài giải.
package vong_lap_for; import java.text.DecimalFormat; import java.util.Scanner; public class TinhGiaTriCuaBieuThucK { public static void main(String[] args) { int n; float sum = 0, temp = 1; Scanner scanner = new Scanner(System.in); // làm tròn đến 2 chữ số thập phân DecimalFormat decimalFormat = new DecimalFormat("#.##"); // n còn nhỏ hơn 1 thì còn nhập lại do { System.out.println("Mời bạn nhập vào số n: "); n = scanner.nextInt(); } while (n < 1); /* * tính giá trị của biểu thức * i còn nhỏ hơn hoặc bằng n thì còn thực hiện thân vòng lặp */ for (int i = 1; i <= n; i++) { temp *= i; // tính giai thừa sum += (float) 1/temp; } System.out.println("Tổng = " + decimalFormat.format(sum)); } }
Nguồn: freetuts.net