Ngôn ngữ C++ cung cấp một số hàm toán học cơ bản để thực hiện các phép toán trên các biến số. Để sử dụng các hàm toán học này, các bạn phải khai báo thư viện <cmath>.
Lưu ý: Trong ngôn ngữ C thì sử dụng thư viện math.h
Hàm abs(x)
Trả về giá trị tuyệt đối của x.
cout<<abs(-2);//2
Hàm cbrt(x)
Trả về giá trị căn bậc ba của x.
cout<<cbrt(1000);//10
Hàm ceil(x)
Trả về số nguyên là giá trị làm tròn lên của x.
cout<<ceil(2.3);//3
cout<<ceil(2.8);//3
Hàm exp(x)
Trả về của ex.
cout<<exp(2);//7.38906
Hàm expm1(x)
Trả về giá trị của ex -1.
cout<<expm1(2);//6.38906
Hàm fabs(x)
Trả về giá trị tuyệt đối của số thực x.
cout<<fabs(-2.3);//2.3
Hàm floor(x)
Trả về số nguyên là giá trị làm tròn xuống của x.
cout<<floor(2.3);//2
cout<<floor(2.8);//2
Hàm fmax(x, y)
Trả về giá trị lớn nhất của số thực x và y.
cout<<fmax(2.1, 3.5);//3.5
Hàm fmin(x, y)
Trả về giá trị nhỏ nhất của số thực x và y.
cout<<fmin(2.1, 3.5);//2.1
Hàm fmod(x, y)
Trả về phần dư của phép chia số thực x/y.
cout<<fmod(15, 8);//7
cout<<fmod(15.8, 8.5);//7.3
Hàm log(x)
Trả về giá trị logarit cơ số e ln(x) của x.
cout<<log(2);//0.693147
Hàm pow(x, y)
Trả về giá trị của x lũy thừa y, tức là xy.
cout<<pow(2, 3);//8
Hàm round(2.6)
Trả về số nguyên là giá trị làm tròn lên của x nếu phần thập phân >= 5. Trả về số nguyên là giá trị làm tròn xuống nếu phần thập phân < 5.
cout<<round(2.3);//2
cout<<round (2.8);//3
Hàm sqrt(x)
Trả về giá trị căn bậc 2 của x.
cout<<sqrt(5);//2.23607
Hàm min và hàm max
Hai hàm này nằm trong không gian tên (namespace) std chứa thư viện chuẩn của C++.
Hàm max(x,y) sẽ tìm giá trị lớn nhất của x và y.
cout <<max(5, 10);//10
Hàm min(x,y) sẽ tìm giá trị nhỏ nhất của x và y.
cout <<min(5, 10);//5
Chương trình C++ minh họa các hàm toán học
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
cout<<"abs(-2) = "<<abs(-2)<<endl;//2
cout<<"cbrt(1000) = "<<cbrt(1000)<<endl;//10
cout<<"ceil(2.3) = "<<ceil(2.3)<<endl;//3
cout<<"ceil(2.8) = "<<ceil(2.8)<<endl;//3
cout<<"exp(2) = "<<exp(2)<<endl;//7.38906
cout<<"expm1(2) = "<<expm1(2)<<endl;//6.38906
cout<<"fabs(-2.3) = "<<fabs(-2.3)<<endl;//2.3
cout<<"floor(2.3) = "<<floor(2.3)<<endl;//2
cout<<"floor(2.8) = "<<floor(2.8)<<endl;//2
cout<<"fmax(2.1, 3.5) = "<<fmax(2.1, 3.5)<<endl;//3.5
cout<<"fmin(2.1, 3.5) = "<<fmin(2.1, 3.5)<<endl;//2.1
cout<<"fmod(15, 8) = "<<fmod(15, 8)<<endl;//7
cout<<"log(2) = "<<log(2)<<endl;//0.693147
cout<<"pow(2, 3) = "<<pow(2, 3)<<endl;//8
cout<<"round(2.3) = "<<round(2.3)<<endl;//2
cout<<"round (2.8) = "<<round (2.8)<<endl;//3
cout<<"sqrt(5) = "<<sqrt(5)<<endl;//2.23607
cout <<"max(5, 10) = "<<max(5, 10)<<endl;//10
cout <<"min(5, 10) = "<<min(5, 10)<<endl;//5
system("pause");
}
Kết quả
abs(-2) = 2
cbrt(1000) = 10
ceil(2.3) = 3
ceil(2.8) = 3
exp(2) = 7.38906
expm1(2) = 6.38906
fabs(-2.3) = 2.3
floor(2.3) = 2
floor(2.8) = 2
fmax(2.1, 3.5) = 3.5
fmin(2.1, 3.5) = 2.1
fmod(15, 8) = 7
log(2) = 0.693147
pow(2, 3) = 8
round(2.3) = 2
round (2.8) = 3
sqrt(5) = 2.23607
max(5, 10) = 10
min(5, 10) = 5
Ngoài những hàm toán học trên, thư viện <cmath> còn có một số hàm toán học khác. Các bạn có thể tham khảo ở website cplusplus.
Hay
Nội dung đầy đủ, ví dụ minh hoạ rõ ràng.