/*************************************************************************************************************************************/ /* */ /* I T E R A T I O N D U T Y P E ' E N S E M B L E D E M A N D E L B R O T ' */ /* D A N S L E P L A N C O M P L E X E : */ /* */ /* */ /* Author of '$xrc/IterationMandelbrot.01$K' : */ /* */ /* Jean-Francois COLONNA (LACTAMME, 20190314135056). */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* 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 POINT_ARGUMENT__PARTIE_REELLE____ \ PARE(0.0) #define POINT_ARGUMENT__PARTIE_IMAGINAIRE \ PARE(1.0) /* Generateur de l'ensemble : on prend "i". */ #define NOMBRE_D_ITERATIONS \ SOUS(BLANC,NOIR) \ /* Nombre d'iterations demandees. */ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* M A C R O S U T I L E S : */ /* */ /*************************************************************************************************************************************/ /*===================================================================================================================================*/ /*************************************************************************************************************************************/ /* */ /* I T E R A T I O N D U T Y P E ' E N S E M B L E D E M A N D E L B R O T ' */ /* D A N S L E P L A N C O M P L E X E : */ /* */ /*************************************************************************************************************************************/ BCommande(nombre_d_arguments,arguments) /*-----------------------------------------------------------------------------------------------------------------------------------*/ Bblock DEFV(complexe,point_argument); /* Nombre complexe generateur. */ DEFV(Positive,INIT(nombre_d_iterations,NOMBRE_D_ITERATIONS)); /* Nombre maximal d'iterations a effectuer. */ /*..............................................................................................................................*/ Cinitialisation(point_argument,POINT_ARGUMENT__PARTIE_REELLE____,POINT_ARGUMENT__PARTIE_IMAGINAIRE); /* Initialisation du nombre complexe generateur. */ GET_ARGUMENTSi(nombre_d_arguments ,BLOC(GET_ARGUMENT_F("r=""par=",Reelle(point_argument)); GET_ARGUMENT_F("i=""pai=",Imaginaire(point_argument)); GET_ARGUMENT_I("iterations=""n=",nombre_d_iterations); ) ); begin_nouveau_block Bblock DEFV(complexe,point_courant); Cegal(point_courant,C_____nombre_complexe__0__0); Repe(nombre_d_iterations) Bblock DEFV(complexe,point_manoeuvre); Cproduit(point_manoeuvre,point_courant,point_courant); Csomme(point_courant,point_manoeuvre,point_argument); CAL3(Prme2("(%+.^^^,%+.^^^)\n",Reelle(point_courant),Imaginaire(point_courant))); Eblock ERep Eblock end_nouveau_block RETU_Commande; Eblock ECommande