/*************************************************************************************************************************************/ /* */ /* G E N E R A T I O N D ' U N E S E Q U E N C E D E P U I S S A N C E S : */ /* */ /* */ /* Definition : */ /* */ /* Cette commande genere une sequence */ /* de puissances. */ /* */ /* */ /* Author of '$xci/puissances$K' : */ /* */ /* Jean-Francois COLONNA (LACTAMME, 1993??????????). */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* 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 CALCULER_EN_ENTIER \ VRAI \ /* Les calculs doivent-ils etre faits en 'Int' ('VRAI') ou en 'Float' ('FAUX') ? */ #define PAS_DES_IMAGES \ I \ /* Pas de passage d'un numero d'image a une autre. */ #define PREMIERE_IMAGE \ PREMIERE_IMAGE_ABSOLUE \ /* Numero de la premiere image a visualiser... */ #define DERNIERE_IMAGE \ DERNIERE_IMAGE_ABSOLUE(SEIZE) \ /* Numero de la derniere image a visualiser... */ #define BASE \ FDEUX \ /* Vase des exponentielles a calculer. */ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* M A C R O S U T I L E S : */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* G E N E R A T I O N D ' U N E S E Q U E N C E D E P U I S S A N C E S : */ /* */ /*************************************************************************************************************************************/ BCommande(nombre_d_arguments,arguments) /*-----------------------------------------------------------------------------------------------------------------------------------*/ Bblock DEFV(Logical,INIT(calculer_en_entier,CALCULER_EN_ENTIER)); /* Les calculs doivent-ils etre faits en 'Int' ('VRAI') ou en 'Float' ('FAUX') ? */ DEFV(Int,INIT(premiere_image,PREMIERE_IMAGE)); /* Numero de la premiere image, */ DEFV(Int,INIT(derniere_image,DERNIERE_IMAGE)); /* Numero de la derniere image. */ DEFV(Int,INIT(numero_d_image,UNDEF)); /* Numero de l'image courante. */ DEFV(Int,INIT(pas_des_images,PAS_DES_IMAGES)); /* Pas de passage d'un numero d'image a une autre. */ DEFV(Float,INIT(base,BASE)); /* Vase des exponentielles a calculer. */ /*..............................................................................................................................*/ GET_ARGUMENTS_(nombre_d_arguments ,BLOC(GET_ARGUMENT_L("entier=",calculer_en_entier); GET_ARGUMENT_I("premiere=""p=",premiere_image); GET_ARGUMENT_I("derniere=""d=",derniere_image); GET_ARGUMENT_I("pas=",pas_des_images); GET_ARGUMENT_F("base=",base); ) ); Test(IL_FAUT(calculer_en_entier)) Bblock Test(fN_EST_PAS_ENTIER(base)) Bblock PRINT_ERREUR("la base d'exponentiation n'est pas entiere"); Eblock ATes Bblock Eblock ETes Eblock ATes Bblock Eblock ETes DoQu(numero_d_image,premiere_image,derniere_image,pas_des_images) Bblock Test(IL_FAUT(calculer_en_entier)) Bblock CAL2(Prin1("%d\n",n_a_la_puissance_p(INTE(base),numero_d_image))); /* Edition de l'exponentielle en 'Int'. */ Eblock ATes Bblock CAL2(Prin1("%.f\n",PUIX(base,FLOT(numero_d_image)))); /* Edition de l'exponentielle en 'Float'. */ Eblock ETes Eblock EDoQ RETU_Commande; Eblock ECommande