Hàm fma () nhận ba đối số x, y và z và trả về x * y + z mà không làm mất độ chính xác
Hàm này được định nghĩa trong tệp tiêu đề.
nguyên mẫu fma () (Theo tiêu chuẩn C ++ 11)
double fma (double x, double y, double z); float fma (float x, float y, float z); fma kép dài (kép dài x, kép dài y, kép dài z); Quảng cáo fma (Kiểu1 x, Kiểu2 y, Kiểu z); // Đối với kết hợp của các kiểu số học
Kể từ C ++ 11, nếu có bất kỳ đối số nào được truyền cho fma () long double
, thì kiểu trả về là Quảng cáo long double
. Nếu không, kiểu trả về là Quảng cáo double
.
(Toán học) x * y + z = fma (x, y, z) (Lập trình C ++)
tham số fma ()
Hàm fma () có ba đối số.
- x - Đối số đầu tiên được nhân.
- y - Đối số thứ hai được nhân với x.
- z - Đối số thứ ba được thêm vào tích của x và y.
fma () Giá trị trả về
Hàm fma () trả về x*y+z
như thể được tính với độ chính xác vô hạn và được làm tròn một lần để phù hợp với kiểu kết quả.
Ví dụ: Cách hoạt động của fma ()?
#include using namespace std; int main() ( double x = 2.0, y = 3.1, z = 3.0, result; result = fma(x, y, z); cout << "fma(x, y, z) = " << result << endl; long double xLD = 3.4, resultLD; resultLD = fma(xLD, y, z); cout << "fma(xLD, y, z) = " << resultLD << endl; return 0; )
Khi bạn chạy chương trình, đầu ra sẽ là:
fma (x, y, z) = 9,2 fma (xLD, y, z) = 13,54