/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        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



Copyright © Jean-François COLONNA, 2019-2024.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / École polytechnique, Institut Polytechnique de Paris, 2019-2024.