Mathc initiation/Fichiers h : x 16c
Installer ce fichier dans votre répertoire de travail.
zomini.h utilitaire |
---|
/* ---------------------------------- */
/* Save as : zomini.h */
/* ---------------------------------- */
void error_f(
fraction f
)
{
if(f.d==0)
{
printf("\n Error : */0\n");
printf("\n Press return to continue.\n");
fflush(stdout);
getchar();
exit(EXIT_FAILURE);
}
}
/* ------------------------------------ */
double modf_f(
fraction f
)
{
double x;
modf((f.n/f.d),&x);
return(x);
}
/* ------------------------------------ */
fraction mini_f(
fraction f
)
{
fraction ft;
double t;
error_f(f);
if(!f.n)
{f.d = 1;
return(f);}
if(f.n == f.d)
{f.n = 1;
f.d = 1;
return(f);}
if(f.d < 0 )
{
f.n *= -1;
f.d *= -1;
}
ft.n = fabs(f.n);
ft.d = fabs(f.d);
while (ft.n>0)
{
if(ft.n<ft.d)
{
t=ft.n;
ft.n=ft.d;
ft.d=t;
}
ft.n-=ft.d*modf_f(ft);
}
f.n/=ft.d;
f.d/=ft.d;
return(f);
}
/* ---------------------------------- */
/* ---------------------------------- */
Ce fichier contient les fonctions pour réduire les fractions.