Provided by: manpages-fr-dev_3.65d1p1-1_all bug

NOM

       fma, fmaf, fmal - Multiplication et addition en virgule flottante

SYNOPSIS

       #include <math.h>

       double fma(double x, double y, double z);
       float fmaf(float x, float y, float z);
       long double fmal(long double x, long double y, long double z);

       Effectuez l'édition des liens avec l'option -lm.

   Exigences    de    macros    de   test   de   fonctionnalités   pour   la   glibc   (consultez
   feature_test_macros(7)) :

       fma(), fmaf(), fmal() :
           _XOPEN_SOURCE >= 600 || _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L
           ou cc -std=c99

DESCRIPTION

       La fonction fma() calcule x * y + z. Le résultat est arrondi à  la  fin  suivant  le  mode
       d'arrondi (consultez fenv(3)).

VALEUR RENVOYÉE

       Ces  fonctions  renvoient  la  valeur  de  x  *  y + z, arrondie comme une seule opération
       ternaire.

       Si x ou y est un NaN, un NaN est renvoyé.

       Si x fois y est exactement un infini et z est un infini de signe  opposé,  une  erreur  de
       domaine se produit et NaN est renvoyé.

       Si x ou y est une valeur infinie et si l'autre vaut 0 et si z n'est pas un NaN, une erreur
       de domaine est produite et un NaN est renvoyé.

       Si x ou y est une valeur infinie et si l'autre vaut 0 et si z est un NaN,  une  erreur  de
       domaine est produite et un NaN est renvoyé.

       Si  x fois y n'est pas une valeur infinie fois zéro (ou vice versa) et si z est un NaN, un
       NaN est renvoyé.

       En cas de dépassement pour le résultat, une erreur d'intervalle se produit et un infini du
       bon signe est renvoyé.

       En  cas de soupassement (« underflow ») du résultat, une erreur d'intervalle se produit et
       un zéro signé est renvoyé.

ERREURS

       Consultez math_error(7) pour savoir comment déterminer qu'une erreur est survenue lors  de
       l'appel de ces fonctions.

       Les erreurs suivantes peuvent se produire :

       Erreur de domaine : x * y + z ou x * y n'est pas correct et z n'est pas un NaN
              Une exception indiquant une virgule flottante incorrecte (FE_INVALID) est levée.

       Erreur d'intervalle : dépassement pour le résultat
              Une exception en virgule flottante de dépassement (FE_OVERFLOW) est levée.

       Erreur d'intervalle : soupassement (« underflow ») du résultat
              Une exception en virgule flottante de soupassement (FE_UNDERFLOW) est levée.

       Ces fonctions ne positionnent pas errno.

VERSIONS

       Ces fonctions ont été introduites dans la glibc dans sa version 2.1.

ATTRIBUTS

   Multithreading (voir pthreads(7))
       Les fonctions fma(), fmaf(), et fmal() sont sûres dans un contexte multithread.

CONFORMITÉ

       C99, POSIX.1-2001.

VOIR AUSSI

       remainder(3), remquo(3)

COLOPHON

       Cette  page  fait partie de la publication 3.65 du projet man-pages Linux. Une description
       du projet et des  instructions  pour  signaler  des  anomalies  peuvent  être  trouvées  à
       l'adresse http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Depuis    2010,    cette   traduction   est   maintenue   à   l'aide   de   l'outil   po4a
       <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du  projet
       perkamon <http://perkamon.alioth.debian.org/>.

       Christophe    Blaess    <http://www.blaess.fr/christophe/>   (1996-2003),   Alain   Portal
       <http://manpagesfr.free.fr/> (2003-2006). Florentin  Duneau  et  l'équipe  francophone  de
       traduction de Debian (2006-2009).

       Veuillez     signaler     toute     erreur     de     traduction     en     écrivant     à
       <debian-l10n-french@lists.debian.org>  ou  par  un  rapport  de  bogue   sur   le   paquet
       manpages-fr.

       Vous  pouvez  toujours  avoir  accès  à la version anglaise de ce document en utilisant la
       commande « man -L C <section> <page_de_man> ».

                                        17 septembre 2013                                  FMA(3)