Mathc gnuplot/Application : Triangles
Apparence
Préambule
[modifier | modifier le wikicode]La géométrie de la tortue dans Wikipedia.
Présentation
[modifier | modifier le wikicode]Quelques exemples avec des fonctions récursives. Petits jeux sur les triangles.
Dessiner des triangles
[modifier | modifier le wikicode]Exemple 1
[modifier | modifier le wikicode]N'oubliez pas les fichiers h de la librairie.
c01.c Exemple 1 |
---|
/* ------------------------------------ */
/* save as : c01.c */
/* ------------------------------------ */
#include "v_a.h"
#include "y_o.h"
/* ------------------------------------ */
double **triangle(double **U,double size);
/* ------------------------------------ */
int main(void)
{
double **U = GINIT(-12.,355.,-5.,410.);
F_mR(triangle(U,400.));
printf(" * open the file main.plt with Gnuplot.");
return 0;
}
/* ------------------------------------ */
double **triangle(
double **U,
double size
)
{
int i=3;
if(size<10.) return(0);
for(;i--;)
{
triangle(U,size/2.);
GO(U,size);TU(U,120.);
}
return(U);
}
Résultat dans gnuplot |
---|
Exemple 2
[modifier | modifier le wikicode]N'oubliez pas les fichiers h de la librairie.
c02.c Exemple 2 |
---|
/* ------------------------------------ */
/* save as : c02.c */
/* ------------------------------------ */
#include "v_a.h"
#include "y_o.h"
/* ------------------------------------ */
double **triangle(double **U,double size);
/* ------------------------------------ */
int main(void)
{
double **U = GINIT(-200.,350.,-120.,410.);
F_mR(triangle(U,200.));
printf(" * open the file main.plt with Gnuplot.");
return 0;
}
/* ------------------------------------ */
double **triangle(
double **U,
double size
)
{
int i=3;
if(size<10.) return(0);
for(;i--;)
{
GO(U,size);
triangle(U,size/2.);
TU(U,120.);
}
return(U);
}
Résultat dans gnuplot |
---|
Exemple 3
[modifier | modifier le wikicode]N'oubliez pas les fichiers h de la librairie.
c03.c Exemple 3 |
---|
/* ------------------------------------ */
/* save as : c03.c */
/* ------------------------------------ */
#include "v_a.h"
#include "y_o.h"
/* ------------------------------------ */
double **triangle(double **U,double size);
/* ------------------------------------ */
int main(void)
{
double **U = GINIT(-200.,180.,-100.,310.);
F_mR(triangle(U,200.));
printf(" * open the file main.plt with Gnuplot.");
return 0;
}
/* ------------------------------------ */
double **triangle(
double **U,
double size
)
{
int i=3;
if(size<10.) return(0);
for(;i--;)
{
GO(U,size/2.);TU(U,-120.);
triangle(U,size/2.);
TU(U,120.);GO(U,size/2.);
TU(U,120.);
}
return(U);
}
Résultat dans gnuplot |
---|