/*************************************************************************************************************************************/ /* */ /* T E S T D E S F O N C T I O N S ' fMULD(...) ' E T ' fMULE(...) ' : */ /* */ /* */ /* Author of '$xtKg/fMULD_fMULE$K' : */ /* */ /* Jean-Francois COLONNA (LACTAMME, 1995??????????). */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* I N T E R F A C E ' listG ' : */ /* */ /* */ /* :Debut_listG: */ /* :Fin_listG: */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* D I R E C T I V E S S P E C I F I Q U E S D E C O M P I L A T I O N : */ /* */ /*************************************************************************************************************************************/ @define PRAGMA_CPP_____MODULE_NON_DERIVABLE /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* F I C H I E R S D ' I N C L U D E S : */ /* */ /*************************************************************************************************************************************/ #include INCLUDES_MINI /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* P A R A M E T R E S : */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* M A C R O S U T I L E S : */ /* */ /*************************************************************************************************************************************/ #define PRINT(valeur,base) \ Bblock \ DEFV(Float,INIT(x,FLOT__UNDEF)); \ EGAL(x,fMULD(valeur,base)); \ CAL2(Prin3("%.17f : son plus proche multiple de %.17f est %.17f par defaut\n",valeur,base,x)); \ EGAL(x,fMULE(valeur,base)); \ CAL2(Prin1(" et %.17f par exces",x)); \ Eblock /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* T E S T D E S F O N C T I O N S ' fMULD(...) ' E T ' fMULE(...) ' : */ /* */ /*************************************************************************************************************************************/ BCommande(nombre_d_arguments,arguments) /*-----------------------------------------------------------------------------------------------------------------------------------*/ Bblock DEFV(Float,INIT(x,FU)); DEFV(Float,INIT(origine,FZERO)); DEFV(Float,INIT(extremite,FDU)); /*..............................................................................................................................*/ GET_ARGUMENTS_(nombre_d_arguments ,BLOC(VIDE;) ); PRINT(NEUT(FLOT(GRO0(UN))),FDEUX); PRINT(NEUT(FLOT(GRO1(UN))),FDEUX); PRINT(NEUT(FLOT(GRO2(UN))),FDEUX); PRINT(NEUT(FLOT(GRO3(UN))),FDEUX); PRINT(NEUT(FLOT(GRO4(UN))),FDEUX); PRINT(NEUT(FLOT(GRO5(UN))),FDEUX); PRINT(NEGA(FLOT(GRO1(UN))),FDEUX); PRINT(NEGA(FLOT(GRO2(UN))),FDEUX); PRINT(NEGA(FLOT(GRO3(UN))),FDEUX); PRINT(NEGA(FLOT(GRO4(UN))),FDEUX); PRINT(NEGA(FLOT(GRO5(UN))),FDEUX); CAL2(Prin6("HOMO(%.17f,%.17f,%.17f,%.17f,%.17f)=%.17f\n" ,x,origine,extremite,FZERO,CERCLE_TRIGONOMETRIQUE ,HOMO(x,origine,extremite,FZERO,CERCLE_TRIGONOMETRIQUE) ) ); CAL2(Prin2("CERC(%.17f)=%.17f\n" ,HOMO(x,origine,extremite,FZERO,CERCLE_TRIGONOMETRIQUE) ,CERC(HOMO(x,origine,extremite,FZERO,CERCLE_TRIGONOMETRIQUE)) ) ); CAL2(Prin6("HOMO(%.17f,%.17f,%.17f,%.17f,%.17f)=%.17f\n" ,CERC(HOMO(x,origine,extremite,FZERO,CERCLE_TRIGONOMETRIQUE)),FZERO,CERCLE_TRIGONOMETRIQUE,origine,extremite ,HOMO(CERC(HOMO(x,origine,extremite,FZERO,CERCLE_TRIGONOMETRIQUE)),FZERO,CERCLE_TRIGONOMETRIQUE,origine,extremite) ) ); CAL2(Prin4("MODF(%.17f,%.17f,%.17f)=%.17f\n",x,origine,extremite,MODF(x,origine,extremite))); CAL2(Prin3("%.17f est divisible par %.17f : %s\n",NEUT(x),extremite,ETAT_LOGIQUE(fDIVISIBLE(FDEUX,extremite)))); CAL2(Prin3("%.17f est divisible par %.17f : %s\n",NEUT(FDEUX),extremite,ETAT_LOGIQUE(fDIVISIBLE(FDEUX,extremite)))); CAL2(Prin3("%.17f est divisible par %.17f : %s\n",NEGA(x),extremite,ETAT_LOGIQUE(fDIVISIBLE(FDEUX,extremite)))); CAL2(Prin3("%.17f est divisible par %.17f : %s\n",NEGA(FDEUX),extremite,ETAT_LOGIQUE(fDIVISIBLE(FDEUX,extremite)))); RETU_Commande; Eblock ECommande