Lớp Math
Bài viết này trình bày cách sử dụng các hàm thiết yếu của lớp Math: sqrt(), sqrtl() và sqrtf() để tính căn bậc hai của biến kiểu double, long double và float với độ chính xác tương ứng. Lớp Math của C++ cung cấp nhiều hàm tính toán toán học bao gồm sin, cos, căn bậc hai, ceil, floor, v.v. Do đó, bắt buộc phải nhập định nghĩa thư viện header <cmath> vào chương trình để sử dụng được tất cả các phương thức tính toán.
Phương thức Sqrt
Phương thức double sqrt(double arg) của lớp Math trả về căn bậc hai của biến double với độ chính xác. Cú pháp hàm như sau:
Cú pháp
double sqrt(double arg)
Mã C++ sau định nghĩa một biến kiểu double với giá trị khởi tạo để tính giá trị căn bậc hai. Sau đó, phương thức sqrt() của lớp Math chấp nhận giá trị này và trả về kết quả với độ chính xác như sau:
Ví dụ
#include <cmath>
#include <iomanip>
#include <iostream>
using namespace std;
int main() {
double val = 225.0;
cout << fixed << setprecision(5) << sqrt(val);
return (0);
}
Kết quả
Như thấy bên dưới, kết quả của chương trình này được tạo ra với độ chính xác 5 như sau:
15.00000
Phương thức Sqrtl
Phương thức long double sqrtl(long double arg) của lớp Math trả về căn bậc hai của biến long double với độ chính xác. Cú pháp hàm như sau:
long double sqrtl(long double arg)
Ví dụ minh họa dưới đây tính căn bậc hai của biến long double do người dùng cung cấp nhờ phương thức sqrtl() của lớp Math:
Ví dụ
#include <cmath>
#include <iomanip>
#include <iostream>
using namespace std;
int main() {
long long int val = 1000000000000000000;
cout << fixed << setprecision(10) << sqrt(val);
return (0);
}
Kết quả
Sau khi biên dịch chương trình bằng trình soạn thảo mã, giá trị tính toán của biến kiểu long đầu vào được thấy như bên dưới:
1000000000.000000000
Phương thức Sqrtf
Phương thức float sqrtf(float arg) của lớp Math trả về căn bậc hai của biến kiểu float với độ chính xác. Cú pháp hàm như sau:
Cú pháp
float sqrtf(float arg)
Theo cú pháp, chương trình cung cấp biến kiểu float cho phương thức sqrtf() để tính căn bậc hai như sau:
Ví dụ
#include <cmath>
#include <iomanip>
#include <iostream>
using namespace std;
int main() {
float val = 300.0;
cout << fixed << setprecision(5) << sqrtf(val);
return (0);
}
Kết quả
Kết quả của biến kiểu float được cung cấp được căn bậc hai như bên dưới:
17.32051