Bài 2.8. Tìm hiểu lớp Math
Nội dung bài học
Mục đích sử dụng
- Lớp Math chứa các hằng số và các công thức tính toán toán học phổ biến đã được xây dựng sẵn.
- Ta sử dụng các hằng số và công thức tính toán này khi muốn thực hiện các tính toán toán học.
- Ví dụ: tính trị tuyệt đối, căn bậc hai, bậc ba, tính sin, cos, làm tròn số…
- Bạn hoàn toàn có thể tự xây dựng công thức tính toán riêng, tuy nhiên, sử dụng các thư viện có sẵn giúp tiết kiệm thời gian, tối ưu hóa những gì đã có.
Cú pháp
- Cú pháp tổng quát để sử dụng lớp Math:
- Với các hằng số: Math.tên_thành_phần
- Với các phương thức: Math.phương_thức(các tham số)
- Ví dụ:
System.out.println(Math.E); // hiển thị số E
var r = 12.25; // bán kính đường tròn
double area = r * r * Math.PI; // sử dụng số PI trong Math.PI
int x = Math.abs(-204); // lấy trị tuyệt đối của -204
Các phương thức thường dùng và mô tả
- Danh sách các phương thức thường dùng của lớp Math và mô tả của chúng:
Phương thức |
Mô tả |
abs(v) | Lấy trị tuyệt đối của v. Kiểu của v là các kiểu số trong Java. |
sqrt(v) | Tính căn bậc hai của v. Giá trị của v phải là số dương. |
cbrt(v) | Tính căn bậc ba của v. Kiểu của v là các kiểu số. |
sin(x) | Tính sin của x. Giá trị của x ở hệ radian. |
cos(x) | Tính cos của x. Giá trị của x ở hệ radian. |
tan(x) | Tính tan của x. Giá trị của x ở hệ radian. |
asin(a) | Tính góc x từ giá trị a = sin(x). Kết quả ở hệ radian. |
ceil(x) | Làm tròn giá trị số x lên số nguyên gần nhất. Kết quả ở dạng double. |
floor(x) | Làm tròn giá trị số x xuống số nguyên gần nhất. Kết quả ở dạng double. |
round(x) | Làm tròn tự động giá trị số x đến số nguyên gần nhất. Kết quả ở dạng double. |
log(x) | Tính logrit cơ số tự nhiên(e) của x. |
exp(x) | Tính e^x. Với e = Math.E |
log10(x) | Tính logarit cơ số 10 của x. |
min(a, b) | Tìm giá trị min trong hai số a, b. |
max(a, b) | Tìm giá trị max trong hai số a, b. |
pow(a, b) | Tính a^b. |
random() | Sinh số ngẫu nhiên trong đoạn từ 0.0 đến < 1.0 |
toRadians(x) | Chuyển x từ độ sang radian |
toDegrees(x) | Chuyển x từ radian sang độ |
Ví dụ minh họa
public class Sample {
public static void main(String[] args) {
int x = -200;
int newX = Math.abs(x);
System.out.println("newX = " + newX);
float degree = 90;
System.out.println(Math.toRadians(degree));
System.out.println(Math.toDegrees(Math.PI / 2));
System.out.println("sin(PI / 3) = " + Math.sin(Math.PI / 3));
System.out.println("cos(PI / 3) = " + Math.cos(Math.PI / 3));
System.out.println("tan(PI / 3) = " + Math.tan(Math.PI / 3));
var radius = 125.66;
var perimeter = 2 * Math.PI * radius;
var area = Math.PI * Math.pow(radius, 2);
System.out.println("Chu vi đường tròn bán kính " + radius + " = " + perimeter);
System.out.println("Diện tích đường tròn bán kính " + radius + " = " + area);
var a = 200;
var b = 500;
System.out.println("min(a, b) = " + Math.min(a, b));
System.out.println("max(a, b) = " + Math.max(a, b));
}
}
- Kết quả:
newX = 200
1.5707963267948966
90.0
sin(PI / 3) = 0.8660254037844386
cos(PI / 3) = 0.5000000000000001
tan(PI / 3) = 1.7320508075688767
Chu vi đường tròn bán kính 125.66 = 789.5450657001868
Diện tích đường tròn bán kính 125.66 = 49607.116477942734
min(a, b) = 200
max(a, b) = 500
Bài tập thực hành
Đề bài đầy đủ: nhấn vào đây
Lời giải mẫu: nhấn vào đây