« Mathc gnuplot/Application : Cercle de courbure d'une courbe » : différence entre les versions

Contenu supprimé Contenu ajouté
Aucun résumé des modifications
Aucun résumé des modifications
Ligne 11 :
= Présentation =
 
* Un exemple à tester (n'oubliez pas les fichiers *.h)
* '''N'oubliez pas les fichiers *.h partagés et ceux de ce chapitre.'''
 
=== Dessiner ===
Ligne 87 ⟶ 88 :
|}
 
== Les fichiers h partagésde ce chapitre ==
 
=== Appel des fichiers standards ===
Ligne 102 ⟶ 103 :
#include <string.h>
/* ------------------------------------ */
#include "xa_defxdef.h"
#include "xa_strctxplt.h"
#include "kfx_xxfx_x.h"
/* ------------------------------------ */
#include "kradius.h"
#include "kg_c.h"
#include "kcircle.h"
</source>
 
=== Les defines ===
 
=== Donné du cercle ===
<source lang="c">
/* ------------------------------------ */
/* Save as : xa_def.h */
/* ------------------------------------ */
#ifndef PI
#define PI 3.14159265359
#endif
/* ------------------------------------ */
void clrscrn(void)
{
printf("\n\n\n\n\n\n\n\n\n\n\n"
"\n\n\n\n\n\n\n\n\n\n\n"
"\n\n\n\n\n\n\n\n\n\n\n");
}
/* ------------------------------------ */
void Pause(void)
{
int i=300;
int j;
 
while(--i){j=600000;while(--j);} }
</source>
 
 
=== Déclaration et initialisation des structures ===
 
<source lang="c">
/* ------------------------------------ */
/* Save as : xa_strctkradius.h */
/* ------------------------------------ */
typedef struct
{
double xmini;
double xmaxi;
double ymini;
double ymaxi;
 
}W_Ctrl, *PW_Ctrl;
/* ------------------------------------ */
W_Ctrl i_WGnuplot(
double xmini,
double xmaxi,
double ymini,
double ymaxi
)
{
W_Ctrl w = {xmini,xmaxi,ymini,ymaxi};
 
return (w);
}
/* ------------------------------------ */
typedef struct
{
double mini;
double maxi;
double step;
 
}t_Ctrl, *Pt_Ctrl;
/* ------------------------------------ */
t_Ctrl i_time(
double mini,
double maxi,
double step
)
{
t_Ctrl t = {mini,maxi,step};
 
return (t);
}
</source>
 
=== Fonction dérivé ===
 
<source lang="c">
/* ------------------------------------ */
/* Save as : kfx_x.h */
/* ------------------------------------ */
double fx_x(
double (*P_f)(double x),
double a,
double h
)
{
return( ((*P_f)(a+h)-(*P_f)(a-h))/(2.*h) );
}
/* ------------------------------------ */
double fx_xx(
double (*P_f)(double x),
double a,
double h
)
{
double t = ((*P_f)(a ));
double tplsh = ((*P_f)(a+h));
double tmnsh = ((*P_f)(a-h));
 
return( (tplsh-2*t+tmnsh)/(h*h) );
}
/* ------------------------------------ */
/* ------------------------------------ */
double Kt_2d(