C ++ fma () - Libreria standard C ++

La funzione fma () accetta tre argomenti x, yez e restituisce x * y + z senza perdere precisione

Questa funzione è definita nel file di intestazione.

prototipo fma () (come dallo standard C ++ 11)

doppia fma (doppia x, doppia y, doppia z); float fma (float x, float y, float z); lunga doppia fma (lunga doppia x, lunga doppia y, lunga doppia z); Promosso fma (Tipo1 x, Tipo2 y, Tipo z); // Per combinazioni di tipi aritmetici

Poiché C ++ 11, se un argomento passato a fma () è long double, il tipo restituito Promoted è long double. In caso contrario, il tipo restituito Promosso è double.

 (Matematica) x * y + z = fma (x, y, z) (Programmazione C ++)

Parametri fma ()

Fma () accetta tre argomenti.

  • x - Il primo argomento da moltiplicare.
  • y - Il secondo argomento da moltiplicare per x.
  • z - Il terzo argomento da aggiungere al prodotto di x e y.

fma () Valore restituito

La funzione fma () restituisce x*y+zcome se calcolata con una precisione infinita e arrotondata una volta per adattarsi al tipo di risultato.

Esempio: come funziona 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; )

Quando esegui il programma, l'output sarà:

 fma (x, y, z) = 9,2 fma (xLD, y, z) = 13,54

Articoli interessanti...