Aller au contenu

Mathc gnuplot/Vectorielle : Fonctions récursives

Un livre de Wikilivres.


Sommaire


N'oubliez pas les fichiers h de la librairie.

c00a.c
/* ------------------------------------ */
/* save as : c00a.c                     */
/* ------------------------------------ */
#include "v_a.h"
#include "y_r.h"
/* ------------------------------------ */
double **fun(double **U,double side,double angle);
/* ------------------------------------ */   
int main(void)
{
double angle     =  90.;
double  side     =  200.;

double **U = G_main(-150.,150.,-0.,300.);

   F_mR(fun(U,angle,side));
   
  printf("  ... load \"a_main.plt\" ... with gnuplot.\n");
  getchar(); 

  return 0;
}
/* ------------------------------------ */   
double **fun(
double **U,
double angle,
double side
)
{
 if(side<5) 
   {
    vo(U,angle, side);  
    vo(U,angle,-side);          
    return(0);
   }
   
 vo(U,angle, side/3.);    
  
 angle+=-30; 
 fun(U,angle,side*2./3.);
 
 angle+= 30; 
 vo(U,angle, side/6.);   
  
 angle+= 25;  
 fun(U,angle,side/2.);
 
 angle+=-25; 
 vo(U,angle, side/3.);   
  
 angle+= 25; 
 fun(U,angle,side/2.);

 angle+=-25; 
 vo(U,angle, side/6.);  
 vo(U,angle, -side);   
 
 return(U);  
}
/* ------------------------------------ */ 
/* ------------------------------------ */
Résultat dans gnuplot
Turtlev06