Programmation SciLab
Résolu
remyj38
Messages postés
56
Statut
Membre
-
Char Snipeur Messages postés 10112 Date d'inscription Statut Contributeur Dernière intervention -
Char Snipeur Messages postés 10112 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
voici le texte de mon prgramme
m=input("masse en kilo : ")
t=input("taille en mètre : ")
IMC=m/(t^2)
afficher("L IMC est de : "+string(IMC))
if IMC<15 afficher("famine, risques extrêmement élevés de maladie"), end
if IMC=15 & 15<IMC & IMC<18.5 afficher("maigreur, risques accrus de maladie"), end
if IMC=18.5 & 18.5<IMC & IMC<25 afficher("corpulence normale, risquesfaibles de maladie"), end
if IMC=25 & 25<IMC & IMC<30 afficher("surpoids, risques accrus de maladie"), end
if IMC=30 & 30<IMC & IMC<35 afficher("obésité modérée, risques élevés de maladie"), end
if IMC=35 & 35<IMC & IMC<40 afficher("obésité sevère, risques treès élevés de maladie"), end
if IMC=40 & IMC>40 afficher("obésité morbide ou massive, risques extrêmement élevés de maladie"), end
je n'arrive pas a finir les conditions: pour la 1ere, ca marche mais pas pour les autres.
merci d'avance.
voici le texte de mon prgramme
m=input("masse en kilo : ")
t=input("taille en mètre : ")
IMC=m/(t^2)
afficher("L IMC est de : "+string(IMC))
if IMC<15 afficher("famine, risques extrêmement élevés de maladie"), end
if IMC=15 & 15<IMC & IMC<18.5 afficher("maigreur, risques accrus de maladie"), end
if IMC=18.5 & 18.5<IMC & IMC<25 afficher("corpulence normale, risquesfaibles de maladie"), end
if IMC=25 & 25<IMC & IMC<30 afficher("surpoids, risques accrus de maladie"), end
if IMC=30 & 30<IMC & IMC<35 afficher("obésité modérée, risques élevés de maladie"), end
if IMC=35 & 35<IMC & IMC<40 afficher("obésité sevère, risques treès élevés de maladie"), end
if IMC=40 & IMC>40 afficher("obésité morbide ou massive, risques extrêmement élevés de maladie"), end
je n'arrive pas a finir les conditions: pour la 1ere, ca marche mais pas pour les autres.
merci d'avance.
1 réponse
-
Tu as trop de conditions !
Par exemple : IMC=15 & 15<IMC & IMC<18.5 ne sera jamais vrai.
Il n'existe aucune valeur IMC qui peut être à la fois =15 et >15 !
De plus il faut mettre des then et éventuellement des else.
if IMC<15 then afficher(...) else if IMC<18.5 then // le else implique que IMC>=15 afficher(...) else ... end end
La confiance n'exclut pas le contrôle