dimanche 26 mai 2013

Algorithme de la Méthode des Trapèzes pour le calcul d'intégral en Langage C

Algorithme de la Méthode des Trapèzes pour le calcul d'intégral en Langage C :

On souhaite calculer l’intégrale de la fonction suivante :
f(x) = exp(-x)
Dans l’intervalle : [0, 1]

#include <stdio.h>
#include <stdlib.h>
#include<math.h>
#define a 0.0 // Borne inférieure d'intégration
#define b 1.0 // Borne supérieure d'intégration
#define N 100 // Nombre de points
double f(double x)
{
return exp(-x); // fonction à intégrer
}
voidmain()
{
double *x;
x = (double *)calloc(N, sizeof(double)); // Allocation dynamique des abscisses
xi
double Somme, I;
double h = (b-a)/N; // Pas d'intégration
Somme = 0.0;
for(int i=1;i<N;i++) // remarquons que l'indice s'arrête à N-1
{
x[i] = a + i*h; // calcul des abscisses xi
Somme += f(x[i]); // calcul de la somme
}
Somme += 0.5*( f(a) + f(b) );
I = Somme*h; // valeur finale de l'intégrale
printf("\n L'integrale I = %18.16g \n\n",I); // Affichage du résultat
delete [] x; // Libération de la mémoire
}

Aucun commentaire:

Enregistrer un commentaire