par , 23/12/2015 à 16h17 (3754 Affichages)
Pour ceux qui ne sont pas très portés sur les mathématiques, l’intégrale d'une fonction f(x) entre les borne a et b sera la surface S comprise entre la courbe de f et l'axe des abscisses (l'axe horizontal) comme sur la figure ci-dessous.
HTML 5 et JavaScript nous permettent parfaitement de mener ce calcul dans un simple navigateur web.
On trouvera ICI ce que l'on peut obtenir en terme d'IHM pour calculer l'intégrale d'une fonction.
Dans cet exemple on calcule l’intégrale de f = x2 entre une borne inférieure et une borne supérieure. Mais on peut faire ce calcul pour n'importe quelle fonction que l'on donnera en argument de notre fonction integrale().
L'algorithme retenu pour calculer la valeur approchée d'une intégrale sera la méthode des rectangles. Je n'entrerai pas dans les détails de cet algorithme afin d'éviter d'effrayer les lecteurs qui ne sont pas spécialement portés sur les mathématiques.
En revanche ce qu'il faut en retenir est que la fonction intégrale prend en paramètres:
la borne inférieure
la borne supérieure
le nombre d'intervalles pour le calcul
et la fonction de callback à intégrer
et renvoie la valeur approchée de cette intégrale.
le code source de cette fonction est le suivant:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| function integrale(borneInf, borneSup, nbreInterval, callback)
{
var i = 0;
var sommeInf = 0;
var sommeSup = 0;
var somme = 0;
var interval = (borneSup - borneInf) / nbreInterval;
for ( i = 0; i < nbreInterval; i++)
{
sommeInf += callback(borneInf + i * interval) * interval;
}
for ( i = 1; i < nbreInterval + 1; i++)
{
sommeSup += callback(borneInf + i * interval) * interval;
}
somme = (sommeInf + sommeSup) / 2;
return somme;
} |