กำหนดภารกิจคือการแสดงการทำงานของฟังก์ชัน fma() ใน C++ ในบทความนี้ เราจะพิจารณาว่าฟังก์ชันนี้ต้องการพารามิเตอร์ใดและจะได้ผลลัพธ์อะไรกลับมา
fma() เป็นฟังก์ชัน inbuilt ของไฟล์ส่วนหัว cmath ซึ่งยอมรับพารามิเตอร์สามตัว x, y และ z และส่งคืนผลลัพธ์ x*y+z โดยไม่สูญเสียความแม่นยำในผลลัพธ์ขั้นกลางใดๆ
ไวยากรณ์
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);
พารามิเตอร์
-
x − องค์ประกอบแรกที่จะคูณ
-
y − องค์ประกอบที่สองที่จะคูณ x
-
z - องค์ประกอบที่สามซึ่งจะถูกเพิ่มเข้ากับผลลัพธ์ของ x และ y
คืนค่า
ฟังก์ชันจะส่งกลับผลลัพธ์ที่แน่นอนของ x*y+z
ตัวอย่าง
#include<iostream> #include<cmath> using namespace std; int main() { double x = 2.1, y = 4.2, z = 9.4, answer; answer = fma(x, y, z); cout << x << " * " << y << " + " << z << " = " << answer << endl; return 0; }
ผลลัพธ์
หากเราเรียกใช้โค้ดข้างต้น มันจะสร้างผลลัพธ์ต่อไปนี้ -
2.1 * 4.2 + 9.4 = 18.22
ตัวอย่าง
#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; }
ผลลัพธ์
หากเราเรียกใช้โค้ดข้างต้น มันจะสร้างผลลัพธ์ต่อไปนี้ -
7.4 * 9.3 + 1.2 = 70.02