Cách làm tròn số trong Java
Trong bài viết này chúng ta sẽ tìm hiểu về cách làm tròn số trong Java. Khi thực hiện tính toán, việc kết quả ra một con số thập phân dài rất bình thường, vì vậy ta cần làm tròn nó cho gọn gàng hơn.
Ví dụ: chúng ta có số x = 4.1235112124, sau khi làm tròn đến 3 số thập phân thì x = 4.124.
1. Làm tròn số trong Jva bằng hàm format
Đầu tiên ta cần khai báo thư viện Scanner đã nhé: import java.util.Scanner;
Yêu cầu người dùng nhập vào một số thập phân (double) cần làm tròn:
Bài viết này được đăng tại [free tuts .net]
Scanner sc = new Scanner(System.in); System.out.print("\n\nNhập vào số cần làm tròn: "); double num = sc.nextDouble();
Trong Java có thuộc tính format() có thể hiển thị một số thực dưới một định dạng nào đó. Ta sẽ áp dụng nó vào việc hiển thị ra một số đã làm tròn.
Để làm tròn tới n chữ số thập phân khi sử dụng format ta làm như sau:
format("%.nf", num)
Trong đó: n là số chữ số thập phân cần làm tròn, f là định dạng số thực và num là số cần làm tròn.
Ví dụ: để làm tới 5 chữ số thập phân ta làm như sau.
format("%.5f", num);
Full code:
import java.util.Scanner; class Main { public static void main(String[] args) { //khai báo class Scanner để nhận dữ liệu từ người dùng Scanner sc = new Scanner(System.in); System.out.print("\n\nNhập vào số cần làm tròn: "); double num = sc.nextDouble(); //sử dụng format để làm tròn tới 3 chữ số thập phân "%3.f" System.out.format("Số %f sau khi được làm tròn: %.3f",num,num); System.out.println("\n-------------------------------------"); System.out.println("Chương trình này được đăng tại Freetuts.net"); } }
Kết quả:
2. Làm tròn số trong Java bằng DecimalFormat
Tương tự như ví dụ trên, ta cũng cần phải khai báo thư viện Scanner nhé: import java.util.Scanner;
Ngoài ra ta cần khai báo thêm thư viện DecimalFormat: import java.text.DecimalFormat;
Đầu tiên ta sẽ yêu cầu người dùng nhập vào số cần làm tròn.
Scanner sc = new Scanner(System.in); System.out.print("\n\nNhập vào số cần làm tròn: "); double num = sc.nextDouble();
Tạo một đối tượng df thuộc class DecimalFormat với định dạng "#.###" (nghĩa là làm tròn tới 3 chữ số thập phân).
DecimalFormat df = new DecimalFormat("#.###");
Sau đó gọi phương thức format() để làm tròn số num vừa được nhập từ bàn phím và hiển thị ra màn hình.
System.out.println("Số "+num+" sau khi làm tròn: "+df.format(num));
Full code:
import java.util.Scanner; import java.text.DecimalFormat; class Main { public static void main(String[] args) { //khai báo class Scanner để nhận dữ liệu từ người dùng Scanner sc = new Scanner(System.in); System.out.print("\n\nNhập vào số cần làm tròn: "); double num = sc.nextDouble(); //khai báo class DecimalFormat với định dạng "#.###", tức là làm tròn đến 3 chữ số thập phân DecimalFormat df = new DecimalFormat("#.###"); //gọi phương thức format() trong DecimalFormat để làm tròn System.out.println("Số "+num+" sau khi làm tròn: "+df.format(num)); 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 đã tìm hiểu xong cách làm tròn một số đến n chữ số thập phân trong Java. Các bạn có thể tìm hiểu về các bài tập Java khác tại đây, chúc các bạn thành công !!!