Page 1 sur 1
solve abs
Publié : mer. sept. 15, 2010 4:56 am
par dido
Bonjour,
Xcas plante completement lorsque l'on demande solve(2<abs(x)<4) par exemple.
Cordialement
Re: solve abs
Publié : mer. sept. 15, 2010 7:24 am
par parisse
En effet, je vais ajouter un test pour eviter le plantage. Mais ca ne resoudra pas l'inequation pour autant, xcas ne sait pas pour le moment resoudre ce type d'inequations. J'espere un jour l'implementer, par contre la syntaxe serait plutot
solve(abs(x)>2 && abs(x)<4)
en effet la forme 2<abs(x)<4 est comprise comme (2<abs(x))<4, ce qui est traduit en enlevant 4 aux 2 membres en chercher les x tels que le test -2<abs(x)-4 est plus petit que 0.
Re: solve abs
Publié : mer. sept. 15, 2010 9:57 am
par dido
Merci pour votre réponse très rapide. Bon courage.
Re: solve abs
Publié : jeu. sept. 16, 2010 6:52 pm
par alb
Cette double inéquation doit concerner la classe de première ?
Ceci me donne l'idée d'un script pour une classe de seconde visualisant la résolution de a<=f(x)<=b dans le cas d'une fonction paire strictement monotone sur les réels positifs.
Je me demande même s'il n'est pas possible de proposer aux élèves après avoir remplacé les coordonnées de tous les points par des ? de retrouver le script.
Voici le code pour 4<=10/(1+x^2)<=8
Code : Tout sélectionner
f(x):=10/(1+x^2);
a:=solve(f(x)=4)[1];
b:=solve(f(x)=8)[1];
si a>=b alors c:=a;a:=b;b:=c;fsi;
plot(f(x),xstep=0.001);
plot(f(x),x=-b..-a,affichage=vert+line_width_5);
plot(f(x),x=a..b,affichage=vert+line_width_5);
plot(0,x=-b..-a,affichage=bleu+line_width_5);
plot(0,x=a..b,affichage=bleu+line_width_5);
segment(point(-a,0),point(-a,f(a)),affichage=epaisseur_ligne_2+ligne_tiret);
segment(point(a,0),point(a,f(a)),affichage=epaisseur_ligne_2+ligne_tiret);
segment(point(b,0),point(b,f(b)),affichage=epaisseur_ligne_2+ligne_tiret);
segment(point(-b,0),point(-b,f(b)),affichage=epaisseur_ligne_2+ligne_tiret);
droite(y=f(a),affichage=rouge);droite(y=f(b),affichage=rouge);
legende(point(0,f(b)),simplifier(f(b)),quadrant2);
legende(point(0,f(a)),simplifier(f(a)),quadrant2);
legende(point(-b,0),-b,quadrant3);legende(point(-a,0),-a,quadrant4);
legende(point(b,0),b,quadrant4);legende(point(a,0),a,quadrant3);
Re: solve abs
Publié : mer. oct. 27, 2010 9:07 pm
par alb
Si j'ai bien compris solve(abs(a-1)>=2 and abs(a-1)<=4,a) est équivalent à solve(abs(a-1)>=2,a);solve(abs(a-1)<=4,a)
Il n'y a aucun moyen de trouver l'intersection de solve(abs(a-1)>=2,a) et de solve(abs(a-1)<=4,a) ?
En français la réponse est différente:
resoudre(abs(a-1)>=2 et abs(a-1)<=4,a) donne "Unable to isolate a in (((a-1)>=2) && (4>=(a-1)))"
Re: solve abs
Publié : jeu. oct. 28, 2010 1:55 pm
par parisse
je suis en train d'essayer d'améliorer solve pour pouvoir résoudre ce type d'inéquations...