/*************************************************************************************************************************************/ /* */ /* C A L C U L D ' U N N O M B R E D E B E R N O U L L I : */ /* */ /* */ /* Author of '$xcg/NombresDeBernoulli$K' : */ /* */ /* Jean-Francois COLONNA (LACTAMME, 20180827152504). */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* 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 : */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* F I C H I E R S D ' I N C L U D E S : */ /* */ /*************************************************************************************************************************************/ #include INCLUDES_BASE /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* P A R A M E T R E S : */ /* */ /*************************************************************************************************************************************/ #define RANG \ DEUX \ /* Rang 'k' du nombre de Bernoulli... */ #define EDITER_SOUS_LA_FORME_RATIONNELLE \ FAUX #define EPSILON_DE_COINCIDENCE \ tgEPSILON /* Editer sous la forme reelle ('FAUX') ou rationnelle ('VRAI') ? */ #include xcg/ARIT.01.I" #include xci/valeurs.01.I" /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* M A C R O S U T I L E S : */ /* */ /*************************************************************************************************************************************/ #include xci/valeurs.02.I" /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* C A L C U L D ' U N N O M B R E D E B E R N O U L L I : */ /* */ /*************************************************************************************************************************************/ BCommande(nombre_d_arguments,arguments) /*-----------------------------------------------------------------------------------------------------------------------------------*/ Bblock DEFV(Int,INIT(rang,RANG)); /* Rang 'k' du nombre de Bernoulli... */ DEFV(Logical,INIT(editer_sous_la_forme_rationnelle,EDITER_SOUS_LA_FORME_RATIONNELLE)); DEFV(Float,INIT(epsilon_de_coincidence,EPSILON_DE_COINCIDENCE)); /* Editer sous la forme reelle ('FAUX') ou rationnelle ('VRAI') ? */ #include xci/valeurs.03.I" /*..............................................................................................................................*/ GET_ARGUMENTS_(nombre_d_arguments ,BLOC(GET_ARGUMENT_I("n=""rang=",rang); GET_ARGUMENT_L("editer_rationnel=""rationnel=""Q=",editer_sous_la_forme_rationnelle); GET_ARGUMENT_N("editer_reel=""reel=""R=",editer_sous_la_forme_rationnelle); GET_ARGUMENT_F("epsilon_coincidence=""eps=",epsilon_de_coincidence); PROCESS_ARGUMENTS_DE_PARAMETRAGE_DE_LA_GENERATION_DE_SUITE_DE_VALEURS_1; PROCESS_ARGUMENTS_DE_PARAMETRAGE_DE_LA_GENERATION_DE_SUITE_DE_VALEURS_2; ) ); begin_nouveau_block Bblock DEFV(Float,INIT(nombre_de_Bernoulli ,COND(EST_PAIR(rang) ,calcul_du_nombre_de_Bernoulli_B2k(MOIT(NEUT(rang))) ,calcul_du_nombre_de_Bernoulli_B2k_plus_1(MOIT(TRMU(rang))) ) ) ); Test(IL_FAUT(editer_sous_la_forme_rationnelle)) Bblock APPROXIMATION_RATIONNELLE_D_UN_REEL(nombre_de_Bernoulli ,VRAI ,epsilon_de_coincidence ,UNDEF ,FAUX ,VRAI ); /* Possibilite introduite le 20180831095646... */ Eblock ATes Bblock EDITION_DE_LA_VALEUR_DE_L_OPERATEUR(nombre_de_Bernoulli); /* Edition du nombre de Bernoulli de rang 'rang'... */ Eblock ETes Eblock end_nouveau_block RETU_Commande; Eblock ECommande