Programation sur TI-82

Fermé
HØAX Messages postés 25 Date d'inscription samedi 20 juin 2009 Statut Membre Dernière intervention 23 août 2011 - 22 oct. 2009 à 11:36
HØAX Messages postés 25 Date d'inscription samedi 20 juin 2009 Statut Membre Dernière intervention 23 août 2011 - 3 nov. 2009 à 14:19
Bonjour,
bonjours jai fai un program pour m'éclater e cour de math ( je suis new dans la programation sur TI)
il ressemble a sa ==>

:10->M
:1->N
:0->C
:randInt(N,M->A
:Repeat C=A
:Input "C=",C
:If C>A
:Disp "MOINS"
:If C<A
:Disp "PLUS"
:End
:Disp "GAGNE"

( sauf que jai rajouter des élément pour rendre les graphisme plus avenants ...)

et je cherche le moyen d'introduire un conteur de coup dans le programe. ... j'ai chercher sur tout les tuto mais c pas encore de mon nvx ... alors si qqun pouvais me donner la commande tout simplement =)
merci d'avance ;)

9 réponses

FrenchFigraro Messages postés 108 Date d'inscription jeudi 15 octobre 2009 Statut Membre Dernière intervention 22 décembre 2009 24
22 oct. 2009 à 12:07
Je crois qu'il y a une boucle for dans la TI-82. Perso, cest celle que j'ai utilisée jusqu'à il y a 4 ans, mais depuis je suis sur 89 Titanium.

sinon, tu peux faire un truc du genre



:10->M
:1->N
:0->C
:8 -> L (j'ai mis 8 arbitrairement, et L pour "limite")
:0 -> I (le i classique de boucle...)
:Repeat I = L
:Input "C=",C
:If C>A
:Then
:Disp "MOINS"
:Elseif C<A
:Then
:Disp "PLUS"
:Else
:Break
:End
:I + 1 -> I
:End
:If C = A
:Then
:Disp "GAGNE"
:Else
:Disp "PERDU"
:End

Je suis pas sûr qu'il y ait un break sur la TI-82, et s'il y en a un, je ne suis pas sur qu'il ne fasse pas qu'interrompre le programme et non juste sortir de la boucle. Si jamais c'était le cas, tu pourrais utiliser les instructions Goto et Lbl
0
HØAX Messages postés 25 Date d'inscription samedi 20 juin 2009 Statut Membre Dernière intervention 23 août 2011
22 oct. 2009 à 21:02
j'ai pas le "break" ... ya pas un autre moyen d'enregistrer le nombre de [repeat] comme une variable ? parceque je maitrise pas encore Lbl et goto ... et jai juste envi de m'éclater un peu et pas de reprendre le tuto depuis le début XD =)
0
FrenchFigraro Messages postés 108 Date d'inscription jeudi 15 octobre 2009 Statut Membre Dernière intervention 22 décembre 2009 24
22 oct. 2009 à 21:21
Lbl et Goto sont super facile à utiliser. Surtout dans ce cas là. C'est juste que c'est une instruction qui n'est pas appréciée en programmation parce qu'elle à tendance à compliquer énormément la maintenance du programme. L'instruction GoTo X (ou X est un nombre ou une lettre), quand elle est rencontrée, renvoie à un autre endroit du programme, quel qu'il soit, défini par une instruction Lbl X.

Fais attention si tu t'en sers avec des lettres. si tu as défini par exemple une variable A dont la valeur est, admettons, 10. un Goto A ne renvoie pas au Lbl 10. Il renvoie au Lbl A s'il est définit, ou est sans effet sinon. voilou voilou...

ça donne ça

:10->M
:1->N
:0->C
:8 -> L (j'ai mis 8 arbitrairement, et L pour "limite")
:0 -> I (le i classique de boucle...)
:Repeat I = L
     :Input "C=",C
     :If C>A
          :Then
               :Disp "MOINS"
          :Elseif C<A
          :Then
               :Disp "PLUS"
          :Else
               :Goto 1 (aller au drapeau 1)
     :End (fin du if)
     :I + 1 -> I
:End (fin du repeat)
:Lbl 1 (drapeau 1)
:If C = A
     :Then
          :Disp "GAGNE"
     :Else
          :Disp "PERDU"
:End


J'ai indenté pour que ce soit plus lisible mais sur la TI, c'pas la peine XD

Ici, dans le test, si A = C, on est dans le cas "else", l'instruction exécutée est donc le Goto 1. Elle envoie l'exécution au Lbl 1, qui est en dehors de la boucle. On en est donc sortit.

Sinon, le nombre de repeat comme une variable en l'occurence, c'est le I en sortie de boucle. Si on est sorti de la boucle pour cause de trop grand nombre de repeat (on a atteint la limite), on devrait avoir I = L + 1 (ici, 9, puisque j'ai fixé arbitrairement L à 8, mais tu peux changer ça)

Si on est sorti de la boucle avec le Goto, alors I = le nombre d'itérations effectués par la boucle
0
HØAX Messages postés 25 Date d'inscription samedi 20 juin 2009 Statut Membre Dernière intervention 23 août 2011
22 oct. 2009 à 23:10
ok cool je recopie tout sa ( sans tout comprendre mais je saisi l'essentiel )
x)

encore merci =)
sinon pour les autre qui lise se topic moi je rajoute des ptit truc genre
:disp "================"
:disp " GAGNER"
:disp " ================"

pour la fin ;) c plus esthétique =)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
FrenchFigraro Messages postés 108 Date d'inscription jeudi 15 octobre 2009 Statut Membre Dernière intervention 22 décembre 2009 24
22 oct. 2009 à 23:13
Y a pas grand interet si y a des points que tu ne comprends pas. Tu veux des précisions ?
0
HØAX Messages postés 25 Date d'inscription samedi 20 juin 2009 Statut Membre Dernière intervention 23 août 2011
22 oct. 2009 à 23:23
a uéééé mais non ... dsl ... spas ske je voulais faire la sa me fix une limite de coup a pas dépasser ( au fait je travaille sur 1 -1000 et pas 1 -10 ... j'ai modifier sa apres ;)
le truc que je voulais essayer c'était de faire la meme séquence qu'avant ... sauf que a la fin sa indique :" gagner en X coup"

le truc simpa se serait de mettre des condition du style ... si X<10 ... "waou tu est tres fort a ce jeux"
ou encore ... si X>20 ..." heu essai encore tu y arrivera peu etre mieux"

voila se genre de truc =)

dsl d'etre si useless en programaion sur TI-82 =/




edit : message poster après test du programme
0
HØAX Messages postés 25 Date d'inscription samedi 20 juin 2009 Statut Membre Dernière intervention 23 août 2011
25 oct. 2009 à 13:40
up
0
HØAX Messages postés 25 Date d'inscription samedi 20 juin 2009 Statut Membre Dernière intervention 23 août 2011
1 nov. 2009 à 00:23
up
0
HØAX Messages postés 25 Date d'inscription samedi 20 juin 2009 Statut Membre Dernière intervention 23 août 2011
3 nov. 2009 à 14:19
Up
0