Viết chương trình tính giá trị của biểu thức R = 1 + 2^2 + 3^3 + ... + n^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
-------------------- ######## --------------------
package vong_lap_for; import java.text.DecimalFormat; import java.util.Scanner; public class TinhGiaTriBieuThucU { public static void main(String[] args) { int n; float sum = 0; 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++) { sum += (float) i/(i+1); // ép kiểu về float để có kết quả chính xác } System.out.println("Tổng = " + decimalFormat.format(sum)); } }
Nguồn: freetuts.net