Nichene

Dm algorithme

Messages recommandés

Bonjour à tous, svp j'ai vraiment besoin d'aide sur cet exercice niveau seconde. Pour le langage naturel je propose :

Saisir x
Si x_<100 (le tiret signifie strictement)
Alors x prend la valeur x-10
Son
Si 100_> x et x<200
Alors x prend la valeur x-25
Sinon
x_> 200
Alors x prend la valeur x-20% (soit x × 1,02) 
Fin
Fin 
Afficher x
Donc en langage Ti cela donne :
Prompt x
If x_< 100
Then
x-10
Élise
If 100_< x et x <200
Then 
x-25
Élise
x_> 200
Then
x × 1,02
End
End
Disp x

Voilà l'algorithme que je propose mais une fois sur calculatrice je ne trouve pas le bon résultat avec 150,175 et 300 
Svp si vous pouvez m'aider, merci d'avance

798ed41c7eb49e16e59a9a3bbe798c68.jpg
 
 
 
 
 
 
  • Commentaires (1) 
  • Signalement d'un ab
a
 
 
VOIR PLUS
 

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonsoir,

1) Un peu de bon sens cela évite les torticolis....:D

 5a45623188921_EBnoncalgo.png.4985903e4d301edec68b18634ce4ff61.png

2) Le langage TI ne m'est pas familier mais pour sûr, quand je lis dans ton programme TI ce qui suit, cela ne m'étonne pas qu'il ne fonctionne pas :

5a4562d002161_EBelse.png.f213d7fce602a7889672f1d480cf489f.png

Regarde mieux ta documentation : else  qui se traduit par "sinon" conviendrait mieux que Élise....  il faut respecter les commandes à la lettre :rolleyes:.

Quant à la 2ème ligne qui mélange anglais (if) et français (et), c'est non conforme à la syntaxe du langage TI.

3) Si le prix est réduit de 20%, il n'est pas multiplié par le coefficient que tu as utilisé mais par...

4) Il n'y a pas de remise pour les achats inférieurs à 20 €. Tu n'en as pas tenu compte.

Partager ce message


Lien à poster
Partager sur d’autres sites

Comme je ne sais pas exactement comment vous a été présenté en cours la syntaxe d'un algorithme en "langage naturel", je zappe cette partie. Simplement, je pense qu'il est préférable de définir deux variables, le montant à saisir et le prix à payer. C'est toujours préférable quand on fait plusieurs tests imbriqués sur une donnée, de façon à éviter que la modification par le calcul de l'entrée se  répercute sur un des tests suivants.

Sinon, pour le programme en TI, comme l'a dit PAVE, regarde bien la documentation et tient compte de la façon de récupérer les instructions. Je t'ai mis ci-dessous un listing. Je l'ai essayé, je n'ai pas obtenu d'incohérence. Je te conseille cependant de l'essayer également pour d'autres valeurs que celles données dans l'énoncé, par exemple, 15, 50, 100 et  200, pour voir si tu obtiens bien les bons résultats.

:ClrHome
:Input "MONTANT ",M
:If M<20
:Then
:M→P
:Else
:If M<100
:Then
:M-10→P
:Else
:If M≥100 and M<200
:Then
:M-25→P
:Else
:0.8*M→P
:End
:End
:End
:Disp "PRIX A PAYER",P

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour Jules,

Dans ton programme, tu as respecté l'idée de Nichene de mettre un "et" mais il me semble que cela devrait fonctionner avec simplement :

5a465b46e64cc_EBpourJules.png.32e6bdf0a03ff712d1f1c81aeff5c61c.png

Avec Algobox, cela tourne ainsi.

Cordialement. 

PS : J'ai essayé de t'envoyer ce message en "privé" mais cela n'a pas été possible.... sans doute que dans ton profil tu as dit ne pas vouloir recevoir ce type de messages.

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour PAVE,

Exact, le M>=100 est superflu puisqu'on fonctionne avec des If-Then-Else. Mea culpa, j'ai suivi sans réfléchir la démarche de Nichene. Faut dire que l'age avançant, les réflexes ne sont plus les mêmes :(.

Cordialement.

P.S.: J'ai effectivement désactivé la réception des messages privés.

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant