Probleme algorithme dicothomie maple

Réponses à toutes vos questions après le Bac (Fac, Prépa, etc.)
ghassanito
Messages: 8
Enregistré le: 06 Juin 2010, 11:56

probleme algorithme dicothomie maple

par ghassanito » 30 Mai 2015, 17:37

SALUT ,

Je voudrais bien traduire un algo vers un langage maple , chose que je n'ai pas reussi :/

Image


et voila ma traduction sur maple

[HTML]dichotom:=proc (pre,f,nmax,a,b)
local n,g,d,
n := 1
g:=a
d:=b

while n pre

p:=(g+d)/2;
print(n,d,g,p)
p:=p+1

if f(d)*f(g)>0 then
g:=p
else
d:=p
fi;
od;
end;[/HTML]


En attendant votre aide svp

merci d'avance :)



mathelot

dichotomie

par mathelot » 30 Mai 2015, 18:09

bonjour,
changer la condition
"if f(d)*f(g)>0 then "
en
"if f(p)*f(g)>0 then "

ghassanito
Messages: 8
Enregistré le: 06 Juin 2010, 11:56

par ghassanito » 30 Mai 2015, 20:28

salut

après modification et ajout des ";" l'algo est validé mais quand je le teste pour une fonction , sa ne marche pas :/

dichotom:=proc (pre,f,nmax,a,b)
local n,g,d,
n := 1
g:=a
d:=b

while n pre

p:=(g+d)/2;
print(n,d,g,p)
p:=p+1

if f(p)*f(g)>0 then
g:=p
else
d:=p
fi;
od;
end;

mathelot

par mathelot » 30 Mai 2015, 20:36

i) remplacer p:=p+1 par n:=n+1.

ii) remplacer "while n<=nmax and (d-b)/2 > pre"
par
"while n<=nmax and (d-g)/2 > pre"

iii)
est ce "do while" plutôt que "while" puisque l'on a un "od" en fin de boucle.

ghassanito
Messages: 8
Enregistré le: 06 Juin 2010, 11:56

par ghassanito » 31 Mai 2015, 11:23

salut , bon voila j'ai refait tout l'algo de dichotomie et sa marche maintenant bien , je suis passer à la méthode du point fixe
En passant du psuedo code vers un code maple je me retrouve face a cette erreur
Error, (in pointfixe) cannot determine if this expression is true or false: .1 prec do
m := f(p);
n := n+1;
print(n, p, f(p));
od;
end proc ; [/CODE]


en prenant f:=x->x^2+2*x-4

puis en fesant

h:=pointfixe(f,2,0.1,5)

sa me donne un message d'erreur

mathelot

par mathelot » 31 Mai 2015, 15:03

la méthode de Newton calcule des valeurs approchées
de la racine de l'équation
via


qui converge (dans les bons cas) vers .

On pose f(x)=x-g(x)

d'où






qui doit converger vers le point fixe (dans les bons cas).

 

Retourner vers ✯✎ Supérieur

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 52 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite