Autorisation : Membre
Nb de messages : 25
Inscrit le : Lun 03 Déc 2012, 20:00
Posté le : Mer 27 Fév 2013, 20:46
Salut Mon Forum Préféré!
Je requiert votre aide précieuse pour m'aider a programmer un petit programme:
j'ai fais quelque essai... mais je ne peux plus me passer de vous
alors mon test le plus mieux a mon gout:
:Input "X1",A
:Input "X2",B
:Input "SR",C
:A-B -> X
:If X [inférieur ou égale à] 2.8C
A+B)/2 -> D
:Disp D
:If X [supérieur ou égale à] 2.8C
:Input "X3"
: ....
Autorisation : Membre
Nb de messages : 3767
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Mer 27 Fév 2013, 22:05
Tu oublies la valeur absolue.
Tu devrais utiliser Else ou stocker le booléen du test pour l'utiliser deux fois plutôt que réécrire deux tests complémentaires.
L'algorigramme énoncé est mauvais : il utilise des nombres dont l'origine n'est pas déclarée.
Les instructions min et max du menu math permettent de déterminer xmin et xmax sans chercher plus loin.
Min et max reçoivent obligatoirement soit deux nombres soit une liste soit deux listes.
Code
Input "Sr",S
Input "X1",A
Input "X2",B
If abs(A-B)<=2.8S
Then
Disp (A+B)/2
Else
Input "X3",C
max({A,B,C->M // on pouvait ne rien stocker mais j'en ai besoin à la fin
min({A,B,C->N
If M-N<=3.3S
Then
Disp (A+B+C)/3
Else
Disp A+B+C-M-N
End
End
Les deux End finaux peuvent être enlevés car ils sont à la fin et qu'ils ferment des Else. Cela manque de rigueur toutefois.
On aurait pu stocker {A,B,C} dans Ans/Rép mais j'ai préféré stocker les maxi et mini pour effectuer un calul pour déterminer le médian.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)