Η συνάρτηση fma () παίρνει τρία ορίσματα x, y και z και επιστρέφει x * y + z χωρίς απώλεια ακρίβειας
Αυτή η συνάρτηση ορίζεται στο αρχείο κεφαλίδας.
πρωτότυπο fma () (από το πρότυπο C ++ 11)
double fma (double x, double y, double z); float fma (float x, float y, float z); long double fma (long double x, long double y, long double z). Προώθηση fma (Type1 x, Type2 y, Type z); // Για συνδυασμούς αριθμητικών τύπων
Από το C ++ 11, εάν κάποιο όρισμα μεταβιβάζεται στο fma () long double
, ο τύπος επιστροφής που προωθείται είναι long double
. Εάν όχι, ο τύπος επιστροφής που προωθείται είναι double
.
(Μαθηματικά) x * y + z = fma (x, y, z) (Προγραμματισμός C ++)
fma () Παράμετροι
Το fma () παίρνει τρία ορίσματα.
- x - Το πρώτο επιχείρημα που θα πολλαπλασιαστεί.
- y - Το δεύτερο όρισμα που θα πολλαπλασιαστεί με το x.
- z - Το τρίτο όρισμα που θα προστεθεί στο προϊόν των x και y.
fma () Επιστροφή τιμής
Η συνάρτηση fma () επιστρέφει x*y+z
σαν να υπολογίζεται σε απεριόριστη ακρίβεια και στρογγυλοποιείται μία φορά για να ταιριάζει στον τύπο αποτελέσματος.
Παράδειγμα: Πώς λειτουργεί το 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; )
Όταν εκτελείτε το πρόγραμμα, η έξοδος θα είναι:
fma (x, y, z) = 9,2 fma (xLD, y, z) = 13,54