ce ce code permet de calculer l'aire en utilisant la méthode des trapèzes la différence est qu'il utilise un pointeur pour référencer la fonction qu'on utilise
Source / Exemple :
double f(double x);
double trap(double(*f)(double x),double a,double b,int N);
main()
{
double a,b;
int N;
printf("entrez la borne suppérieur\n");
scanf("%lf",&a);
printf("entrez la borne inférieur\n");
scanf("%lf",&b);
printf("entrez le nombre de subdivision\n");
scanf("%d",&N);
printf("%lf",trap(f,a,b,N));
}
double f(double x)
{
return exp(x);
}
double trap(double(*f)(double x),double a,double b,int N)
{
double pas,aire,s=0;
int i;
pas=fabs(b-a)/N;
for(i=1;i<=N-1;i++)
{
s+=f(a+i*pas);
}
aire=pas/2*(f(a)+2*s+f(b));
return("le resultat est :%lf\n",aire);
}
Conclusion :
si il y a des remarque a faire n'hésiter pas vous pouvez des propositions de complément