home *** CD-ROM | disk | FTP | other *** search
- /*********************************************************************
- * CH07_03.C Directives et macros *
- * Exemples *
- *********************************************************************/
-
- #include<stdio.h>
- #include<math.h> /* pour pouvoir utiliser les fonctions floor()
- atan() et pow(). */
-
- /* Useful definitions using PI by Wayne Hamilton */
-
- #ifndef PI /* Θvite une Θventuelle double dΘfinition
- et des effets de bord */
- #define PI (4*atan(1))
- #endif
-
- #define deg_rad(d) ((d)*PI/180) /* convertit des degrΘs en radians.*/
- #define rad_deg(r) ((r)*180/PI) /* convertit des radians en degrΘs.*/
-
-
- /* rounding macros by Dave Knapp & Thad Smith */
-
- #define iround(x) floor((x)+0.5)
- /* arrondit un rΘel x α l'entier le plus proche. */
-
- #define fround(n,d) (floor((n)*pow(10.,(d))+.5)/pow(10.,(d)))
- /* arrondit un rΘel n α d dΘcimales. */
-
- main( void)
- {
- double Arc1= 60, Arc2= PI/ 3, x, y;
-
- printf(" Conversion de degrΘs en radians: Arc1= %lf\n"
- " Conversion de radians en degrΘs: Arc2= %lf",
- deg_rad( Arc1), rad_deg( Arc2) );
-
- x= deg_rad( 30);
- printf("\n\n Soit x= %lf , Arrondi α l'entier de x= %lf"
- "\n\t\t Arrondi de x α 4 dΘcimales= %lf",
- x, iround( x), fround( x, 4) );
-
- }
-
-
-