Algo résolution 2nd degré
Posted:
27 Sep 2015, 17:27
by ghali bennouna
Bonsoir,
je dois faire un algorithme qui calcule discriminant d et en fonction du résultat affiche soit "2 racines" (et calcule x1 et x2) soit "une double racine" (et calcule x0) soit aucune solution.
Ci joint l'algorithme
merci de me venir en aide
- Code: Select all
Define reso2ndeg()=
Prgm
Local d
Request"a",a
Request"b",b
Request"c",c
d:=b2-4ac
If d>0 Then
Disp "2 racines"
Disp "x1=",((-b-root(d))/2a)
Disp "x1=",((-b+root(d))/2a)
ElseIf d=0 Then
Disp "une double racine"
Disp "x0=",(-b/2a)
ElseIf d<0 Then
Disp "aucune solution"
EndIf
Return d
EndPrgm
Re: Algo résolution 2nd degré
Posted:
27 Sep 2015, 17:31
by noelnadal
Dis-nous ce qui marche pas, c'est toujours mieux...
À mon avis, il faut déclarer les variables a,b,c comme tu l'as fait pour d.
Et à la fin, ce n'est pas "aucune solution", c'est "aucune solution réelle", mais bon, c'est un détail...
Re: Algo résolution 2nd degré
Posted:
27 Sep 2015, 17:36
by ghali bennouna
deja merci
mais je reçois le message d'erreur suivant :
Erreur : le test n'a pas donné de résultat True ou false
Re: Algo résolution 2nd degré
Posted:
27 Sep 2015, 17:37
by Hamza.S
il y a des programmes qui le font très bien sur le site comme
archives_voir.php?id=16642 ou secdeg
archives_voir.php?id=15345après si tu le fais pour un entrainement pour la programmation c'est très bien
il y a certaines erreur à corriger
d:=b2-4ac il faut l'écrire
d:=b^2-4*a*c
si tu notes ac la calculette le considère comme une seule variable il faut mettre le signe pour distinguer
Re: Algo résolution 2nd degré
Posted:
27 Sep 2015, 17:43
by ghali bennouna
Merci bcp Hamza
l'erreur était au niveau de delta il fallait mettre les * entre 4*a*c
Re: Algo résolution 2nd degré
Posted:
27 Sep 2015, 17:48
by Hamza.S
pour une amélioration rapide
- Code: Select all
Define reso2ndeg(a,b,c)=
Prgm
Local d
d:=b^2-4*a*c
If d>0 Then
Disp "2 racines"
Disp "x1=",((-b-root(d))/(2a))
Disp "x1=",((-b+root(d))/(2a))
ElseIf d=0 Then
Disp "une seule racine"
Disp "x0=",(-b/(2a))
ElseIf d<0 Then
Disp "aucune solution"
EndIf
Return d
EndPrgm
pour le lancer il suffit de mettre les données de a,b et c entre les parenthèses reso2ndeg(1,2,1)
si tu as une Nspire avec moteur CAS ça peut encore s'améliorer
Re: Algo résolution 2nd degré
Posted:
27 Sep 2015, 19:37
by ghali bennouna
merci bcp j'ai en effet une CX CAS et a bientôt