Algorithmique

Retrouver tous les sujets résolus.
Répondre
Jean

Algorithmique

Message par Jean » sam. 3 sept. 2016 16:00

Bonjour, j'ai un dm à faire en maths mais je ne parviens à réaliser que la moitié de l'exercice. En effet pour la question trois je n'arrives pas à comprendre l'étape surlignée de l'algorithme "Si (F1 (a)*F1 (c)<0) Alors". De même je ne comprend pas le le tableau, comment le compléter etc. Merci de m'éclairer
Fichiers joints
20160903_164734-1-2.jpg
20160903_164734-1-1-2.jpg
20160903_164734-1-1-1.jpg
sos-math(21)
Messages : 10401
Enregistré le : lun. 30 août 2010 11:15

Re: Algorithmique

Message par sos-math(21) » dim. 4 sept. 2016 08:18

Bonjour,
ton algorithme propose la recherche d'une solution pour l'équation \(f(x)=0\).
Ainsi si on part de l'intervalle \((a\,;\,b]\) où l'on sait qu'il existe une unique solution \(\alpha\) pour \(f(x)=0\), alors on prend le milieu de l'intervalle \(c=\frac{a+b}{2}\) et on calcule le produit \(f(a)\times f(c)\).
- Si celui-ci est négatif, alors cela signifie que \(f(a)\) et \(f(c)\) sont de signes contraires, donc que la fonction change de signe entre ces deux bornes et donc la solution \(\alpha\) appartient à cet intervalle donc on travaille désormais dans cet intervalle et on affecte à \(a\) la valeur \(a\) et à \(b\) la valeur \(c=\frac{a+b}{2}\)
- Si celui-ci est positif, cela signifie que la fonction est de signe constant sur cet intervalle, donc elle ne s'annule pas sur celui-ci et donc elle s'annule sur l'autre moitié de l'intervalle. Ainsi on travaille ensuite sur cette deuxième moitié qui contient la solution \(\alpha\). On affecte donc à \(a\) la valeur \(c=\frac{a+b}{2}\) et à \(b\) la valeur \(b\).
On recommence ensuite la procédure mais tu remarqueras qu'à chaque "tour", l'intervalle est réduit de moitié, on arrivera donc à entourer la solution \(\alpha\) avec une précision aussi fine que souhaitée (l'amplitude de l'intervalle).
Est-ce plus clair ?
Jean

Re: Algorithmique

Message par Jean » dim. 4 sept. 2016 18:17

Bonsoir,
En effet c'est plus clair merci pour la qualité de vos explications.
Cependant quand je suis les étapes de l'algorithme j'obtiens comme résultat du produit f (a) x f (c) ceci : -0.375. Or pour expliquer comment l'exécution de l'algorithme conduit aux sorties a=0.5 et b=1 j'aurais du obtenir un résultat positif ? Je suis à nouveau perplexe...
SoS-Math(9)
Messages : 6351
Enregistré le : mer. 5 sept. 2007 12:10

Re: Algorithmique

Message par SoS-Math(9) » mar. 6 sept. 2016 14:23

Bonjour Jean,

a = 0, donc f(0) = 1
c = 0,5 donc f(0,5) = -0,375
Donc f(a) x f(c) = -0.375 donc f(a) x f(c) < 0, alors d'après ton algorithme, b prend la valeur de c = (a+b)/2 = 0,5 et la valeur de a ne change pas.
Donc b = 0,5 et a = 0.

Ce résultat n'est pas logique avec la question, donc il y a, semble-t-il, une erreur dans l'énoncé ...

SoSMath.
Jean-Baptiste

Re: Algorithmique

Message par Jean-Baptiste » ven. 9 sept. 2016 20:02

Bonsoir. En effet il y avait une erreur corrigée par ma prof. Concernant l'algorithme, comment est il possible de déterminer une valeur approchée de alpha avec celui ci ? Merci
SoS-Math(9)
Messages : 6351
Enregistré le : mer. 5 sept. 2007 12:10

Re: Algorithmique

Message par SoS-Math(9) » sam. 10 sept. 2016 10:23

Bonjour Jean-Baptiste,

Dans ton algorithme, au début, alpha est dans l'intervalle [a ; b].
A chaque boucle tu divises par 2 la longueur (qui est égale à b-a) de l'intervalle [a ; b] en gardant alpha dans l'intervalle.
Dans ton exercice, au début a = 0 et b = 1 avec alpha dans [0 ; 1]
Après une boucle, a = 0 et b = 0,5 avec alpha dans [0 ; 0,5].
Si tu continues la longueur de ton intervalle va encore être diviser par 2 ... et ainsi de suite jusqu'à obtenir une longueur b-a soit inférieure à la précision demandée.

SoSMath.
Répondre