Code : Tout sélectionner
Parabole(a,b,c):={
local E,absc,ordo,axe,leg,seg;
E:=a*x^2+b*x+c;
//le graphe de E est-il toujours une parabole ?
si a==0 alors retourne "la courbe n'est pas une parabole";fsi;
//la fonction admet-elle un minimum, un maximum ?
si a>0 alors absc:=fMin(E);sinon absc:=fMax(E);fsi;
ordo:=subst(E,x=absc);
//Quelle est l'équation de l'axe de symétrie ?
axe:=droite(x=-b/2a,affichage=ligne_tiret+rouge);
leg:=legende(point(absc,0),absc,quadrant4),
legende(point(0,ordo),ordo,quadrant2);
seg:=segment(point(absc,ordo),point(0,ordo),affichage=ligne_tiret);
retourne axe,leg,seg,graphe(E,x=-b/2a-5..-b/2a+5,affichage=epaisseur_ligne_2);
}
:;
Inter2paraboles(a1,b1,c1,a2,b2,c2,opt):={
//opt=1 pour les abscisses des points d'intersection
//opt=0 pour les deux graphes
local E1,E2;
si opt==1 alors
E1:=a1*x^2+b1*x+c1;E2:=a2*x^2+b2*x+c2;
retourne solve(E1=E2);
sinon
retourne Parabole(a1,b1,c1),Parabole(a2,b2,c2);
fsi;
}
:;
On peut dans une fenêtre de géométrie définir un paramètre m puis faire Parabole(m,2,-3) pour montrer le lien entre le signe de m et la convexité.