Bài viết này trình bày cách hoạt động của hàm fma() trong C++. Chúng ta sẽ xem các tham số và kết quả trả về.
fma() là hàm built-in của header <cmath>, nhận ba tham số x, y, z và trả về x*y + z mà không mất độ chính xác ở các bước trung gian.
Cú pháp
float fma(float x, float y, float z); double fma(double x, double y, double z); long double fma(long double x, long double y, long double z);
Tham số
x– Phần tử thứ nhất nhân.y– Phần tử thứ hai nhân với x.z– Phần tử thứ ba cộng vào kết quả x*y.
Giá trị trả về
Trả về kết quả chính xác của x*y + z.
Ví dụ 1
#include <iostream>
#include <cmath>
using namespace std;
int main() {
double x = 2.1, y = 4.2, z = 9.4, ans;
ans = fma(x, y, z);
cout << x << " * " << y << " + " << z << " = " << ans << endl;
return 0;
}
Kết quả
2.1 * 4.2 + 9.4 = 18.22
Ví dụ 2
#include <bits/stdc++.h>
using namespace std;
int main() {
double a = 7.4, b = 9.3, c = 1.2;
double ans = fma(a, b, c);
cout << a << " * " << b << " + " << c << " = " << ans << endl;
return 0;
}
Kết quả
7.4 * 9.3 + 1.2 = 70.02