Programmation TI-82. IMC

Fermé
julien62100 Messages postés 77 Date d'inscription jeudi 22 janvier 2009 Statut Membre Dernière intervention 14 mars 2017 - 10 oct. 2012 à 20:18
 random - 7 févr. 2017 à 12:09
Bonsoir !
Alors voilà j'ai dois faire un programme d'IMC sur ma TI-82, jusque là aucun problème. On m'a aidé à trouver etc, j'ai réussi mais le problème c'est que je voudrais rajouter au dessus de SURPOIDS, OBESE. Mais je n'y arrive pas, ça me met toujours SURPOIDS et OBESE en même temps..
Voici le programme sans OBESE.

:Input "M (en kg)=",M
:Input "T (en m)=",T
:M/T²->A
: Disp "IMC=",A
:If A<18
:Then
: Disp "MAIGRE"
:Else
:If A>25
:Then
: Disp "SURPOIDS"
:Else
: Disp "NORMAL"
:End

Et celui avec OBESE

:Input "M (en kg)=",M
:Input "T (en m)=",T
:M/T²->A
: Disp "IMC=",A
:If A<18
:Then
: Disp "MAIGRE"
:Else
:If A>25
:Then
: Disp "SURPOIDS"
:Else
:If A>30
:Then
: Disp "OBESE"
:Else
: Disp "NORMAL"
:End

Je ne sais pas d'où vient le problème, si vous pourriez m'aider ce serait sympa.
Merci au revoir !

2 réponses

xosaci Messages postés 51 Date d'inscription mardi 30 août 2011 Statut Membre Dernière intervention 27 août 2013 8
10 oct. 2012 à 20:45
Salut,
Tu peux essayer de mettre ta deuxième condition à l'intérieur de la première (apres le Then), comme sa tu test si c'est supérieur a 25 puis 30 si > 30 t'affiches obese, et après la realisation de cette condition tu peux afficher surpoids ! :)
J'espère que c'est bien sa que tu voulais faire !
0
ccm81 Messages postés 10903 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 19 novembre 2024 2 426
11 oct. 2012 à 12:00
bonjour

tu aurais intérêt à utiliser le même type de test dans tes si ... alors
par exemple avec <

:If A<18
:Then
: Disp "MAIGRE"
:Else
:If A<25
:Then
: Disp "NORMAL"
:Else
:If A<30
:Then
: Disp "SURPOIDS"
:Else
: Disp "OBESE"
:End 

RQ. il te faut aussi réfléchir aux bornes de tes intervalles d' IMC, peut être utiliser le test "inférieur ou égal" au lieu de "inférieur"

bonne suite
-1
Salut,

C'est parce que tu dois définir des bornes; quand A>30, il est également >25, ce qui fait que ça affichera "surpoids" et "obèse"
Essaye avec "If 25<A<30"
0
random > random
7 févr. 2017 à 12:09
Ou plutôt
If 25</=A et A<30
Then
Disp "surpoids"
0