begin process at 2012 05 27 20:03:21
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Maths & Algorithmes

 > INTEGRATION NUMÉRIQUE PAR LA MÉTHODE DES TRAPÈZES (C)

INTEGRATION NUMÉRIQUE PAR LA MÉTHODE DES TRAPÈZES (C)


 Information sur la source

 Description

C'est une méthode de Newton-Cotes : On subdivise l'intervalle d'intégration [a ;b] en n sous intervalles de longueur égale h.
h=(b-a)/n
Sur chaque sous intervalle [xi;xi+1] on remplace f par son polynôme d'interpolation de degré 1 (sa corde) passant par les points (xi,f(xi)) et
(xi+1, f(xi+1)).

Algorithme : Intégrale f(x)dx entre [a,b] = h[ (f(a)+f(b))/2 + SOMME de i=1 à n-1 de f(a+i*h)]

Source

  • #include <stdio.h>
  • #include <math.h>
  • double f(double x)
  • {
  • return sqrt(x);
  • }
  • int main(int argc, char *argv[])
  • {
  • int i,n;
  • double s,t,x;
  • double a,b,h;
  • a=1.0; /* Borne inferieure de l'intervalle */
  • b=2.0; /* Borne superieure de l'intervalle */
  • n=10; /* Nombre d'itération */
  • h=(b-a)/n;
  • s=f(a)+f(b);
  • for (i=0;i<=n-1;i++)
  • {
  • x=a+i*h;
  • s=s+2*f(x);
  • t=s*h/2;
  • printf("\n %.16e",t);
  • }
  • return 0;
  • }
#include <stdio.h>
#include <math.h>

double f(double x)
{
return sqrt(x); 
}

int main(int argc, char *argv[])
{
  int i,n;
  double s,t,x;
  double a,b,h;

  a=1.0; /* Borne inferieure de l'intervalle */
  b=2.0; /* Borne superieure de l'intervalle */
  n=10;  /* Nombre d'itération */

  h=(b-a)/n;
  s=f(a)+f(b);

  for (i=0;i<=n-1;i++)
  {
   x=a+i*h;
   s=s+2*f(x);
   t=s*h/2;

  printf("\n %.16e",t);
  }

 return 0;

}



 Sources du même auteur

Source avec une capture FRACTALE NEWTON-RAPHSON VERSION GLUT
Source avec Zip FAST FOURIER TRANSFORM
TRANSFORMEE DE FOURIER DISCRETE
Source avec une capture FRACTALE TREE (ARBRE) VERSION GLUT
Source avec une capture COURBE DE GUMOWSKI & MIRA VERSION GLUT

 Sources de la même categorie

Source avec Zip UN EXAMPLE D'APPLICATION EN CUDA DE L'ALGORITHME DE SCAN POU... par oguzaras
Source avec Zip Source avec une capture CHIFFREMENT DE VIGENERE par lajouad
Source avec Zip Source avec une capture ANALYSE SYNTAXIQUE par lajouad
Source avec Zip Source avec une capture STRUCTURE D'UNE MATRICE PAR LES LISTE LINÉAIRE (NON CONTUGUS... par benzarabel
Source avec Zip Source avec une capture DESSINER UNE ARBRE BINAIRE( MODE CONSOLE): par benzarabel

Commentaires et avis

Commentaire de orius le 03/07/2004 00:33:58

Jolie source compile sans problème sous Visual C++.

ça aurait été mieux je pense de mettre des long double dans les déclarations plutot que des doubles. Car si l'on change les bornes a et b le double et inssufisant je trouve :p

Commentaire de kall333 le 03/07/2004 08:23:05

Tout petit algo simple et limpide.
La simplicité est le reflet de l'intelligence.

Superbe!

Commentaire de donmilo1 le 24/11/2004 14:29:05

je voudrai bien avoir la methode de samson 1/3 et samson 3/8 pour la resolution des integrales en c++

Commentaire de sanamanar le 17/01/2011 20:19:04

merci

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,265 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales