Programme 7 : Imprécision avec le float avec un calcul sur PI
Imprécision avec le float avec un calcul sur PI.cpp
— 1.3 KB
Contenu du fichier
/** \file pi.cpp \brief Illustration de l'imprecision lie aux reels avec PI \author Benoit Fraikin \date 17 fevrier 2007 (derniere version) \date 17 fevrier 2007 (création) \version 1.0 : 17 fevrier 2007 Ce programme montre le resultat obtenu lors des calculs de cos(PI/2) et sin(PI) lorsqu'on traite PI comme un nombre de type \c double puis comme un nombre de type \c float. Les valeurs obtenues sont imprecises. Ce qui est normal puisque PI n'est jamais le PI mathematique, et est toujours une valeur approchee. La bibliotheque iomanip permet de definir une meilleure precision pour l'affichage des valeurs numeriques. */ #include <cmath> #include <iomanip> #include <iostream> using namespace std; /** \brief Illustration de l'imprecision lie aux reels avec PI */ int main () { const double PI = acos(-1); // = 3.14159265359 const float PI_F = (float) acos(-1); // = 3.14159 cout << "Gestion de PI de type double" << endl ; cout << setprecision(12) ; cout << PI << endl; cout << cos(PI/2) << endl ; cout << sin(PI) << endl ; cout << "Gestion de PI de type float" << endl ; cout << setprecision(6) ; cout << PI_F << endl; cout << cos(PI_F/2) << endl ; cout << sin(PI_F) << endl ; return 0; }