Forum

Catégorie : Programmes
Forum : Aide à la programmation
Vues : 1600
Réponses : 23
Type : discussion
Etat : réponses autorisées

Stopper edit-meilleurs scores-problème cable

Jérôme le 14/10/2011 à 20:37
Salut à tous,
j'ai beaucoup de questions...
Déjà je cherche un moyen de sauvegarder les scores d'un jeu que j'ai trouvé (donc pas de moi) et de définir 3 meilleurs scores ... Commme par exemple, entre 30 et 50 = Nul happy.gif

Voici le programme winkle.gif :


:ClrHome
:Output(4,6,"MAXIME
:Output(5,5,"PRESENTE
:For(T,0,300
:End
:ClrHome
:Output(4,6,"SLALOM
:For(T,0,300
:End
:0üA
:0üS
:0üV
:0üX
:0üB
:0üK
:4üA
:0üS
:3üV
:Lbl 0
:ClrHome
:round(7rand+1,0)üX
:If Xø1
:Output(X-1,8,"+
:If Xø8
:Output(X+1,8,"+
:16üB
:Lbl 1
:Output(A,B,"=
:B-1üB
:getKeyüK
:If (K=105 or K=25) and Aø1
:A-1üA
:If (K=104 or K=34) and Aø8
:A+1üA
:If A=X and B=8
:S+1üS
:If AøX and B=8
:Then
:ClrHome
:Disp ""," TU AS LOUPE"," UNE PORTE!!"," SCORE:
:Output(4,8,S
:Pause
:Goto Q
:End
:If B=1
:Goto 0
:Goto 1
:Lbl Q
:ClrHome

Ensuite j'aimerais bien comprendre comment protéger les programmes de l'edit sur une calculette autre que la mienne.

Et pour finir ^^, j'ai un cable pc->ti (grey) mais quand je connecte ma ti 82stats.fr , il ne la trouve dans aucun port cry.gif

Merci de votre aide !
sandro le 14/10/2011 à 21:25
Si tu arrive à transférer ce programme https://ti83.pages-perso.free.[...]ers/protect.zip et le shell SOS sur ta TI, tu peut vérouiller dévérouille à volenté l'édition des programmes sur ta TI, et lors du transfert, ils resteront dans l'état au moment de l'envoie (du point de vue de l'édition).

Sandro
Jérôme le 14/10/2011 à 21:51
Oui mais le problème c'est que le câble déconne... En passant par Graph link j'arrive pas à transférer des programmes.
sandro le 14/10/2011 à 22:01
T'a assayé avec TI-Connect?
Jérôme le 14/10/2011 à 22:05
Je crois bien... Je réessaye lundi et je te dis :p Et sinon pour les meilleurs scores, tu peux m'expliquer ? :S
sandro le 15/10/2011 à 10:40
Tu fait un encodage mathématique et tu stoque le résultat dans une liste en codant le résultat (utilise des pi, de e, voir des log et des ln si tu connais) puis, quant il faut lire le score, la TI décode (en faisant les oppérations inverses) et si le nombre est incohérent (ce qui sera surement le cas si l'on a modifié la liste), tu affiche TRICHEUR. Mieux encore, si tu teste la cohérence des valeures au tout début déjà, tru peut même mettre un stop dans le code, qui est executé si et seulement si le score est incohérent.

Sandro
Jérôme le 15/10/2011 à 10:51
Tu peux me faire un exemple ? :] J'ai pas tout compris en particulier l'encodage et faire une liste...
sandro le 15/10/2011 à 11:05
Prenons par example une liste des 3 meilleurs score:

Pour encoder (S étant le score et R le rand):
Code
(ln((8*S+pi/2)²)^3)/log(e²-pi+3) -> lSCORE(R


et pour décoder (L1 étant la liste des scores décodés)
Code
For(A,1,3
lSCORE(A -> X
X*log(e²-pi+3) -> X
racine_cube(X -> X
e^(X) -> X
racine carrée(X) -> X
X-pi/2 -> X
X/8 -> X
X -> L1(A)
End
Arrondi(L1,5 -> L1


Soit en simplifié :
Code
{0 -> L1
For(A,1,3
0.125(-pi/2+racine carrée(e^(racine_cube(lSCORE(A)*log(e²-pi+3) -> L1(A)
End


Et pour vérifier si l'on a triché :
Code
If prod(L1) [différend de] ent(Prod(L1
Then
Disp "TRICHEUR
Stop
End


Sandro
Jérôme le 15/10/2011 à 11:11
Ok merci et juste si je veux que "Nul" apparaisse lorsque le score est entre 0 et 10 par ex je fais comment ?
Et je met l'encodage au début et le désencodage à la fin c'est ca !? happy.gif
tilo1996 le 15/10/2011 à 11:28
La variable S Est ici deja decodée Bien sur bigmouth.gif

Code
If S>0 et S<10: Disp"T ES NUL" 
Jérôme le 15/10/2011 à 11:50
Merci !
In correspond à quoi je ne le trouve pas ... et pi =comme en maths ^^' ?
Jérôme le 15/10/2011 à 11:54
c'est bon pour in crazy.gif
[désolé double post]
xDreams le 15/10/2011 à 12:07
Tu peux recopier le prog avec les meilleurs scores stp ?
sandro le 15/10/2011 à 21:50
pi est bien la lettre greque que l'on utilise en maths, et ln est le logarithme népérien (c'est la touche audessus de [sto -> ]).

Sandro
Jérôme le 15/10/2011 à 23:08
Tu pourrais réécrire le prgm avec les meilleurs scores stp ? J'arrive pas :S(je débute)
linkakro le 16/10/2011 à 00:04
Code
3->dim(lSCORE
0.125(-pi/2+racine carrée(e^(racine_cube(lSCORE*log(e²-pi+3)->L1
If fPart(prod(L1
Then
Disp "TRICHEUR
Stop
End
:ClrHome
:Output(4,6,"MAXIME
:Output(5,5,"PRESENTE
:For(T,0,300
:End
:ClrHome
:Output(4,6,"SLALOM
:For(T,0,300
:End
:0ü ( ) A
:0ü ( ) S
:0ü ( ) V
:0ü ( ) X
:0ü ( ) B
:0ü ( ) K
:4ü ( ) A
:0ü ( ) S
:3ü ( ) V
:Lbl 0
:ClrHome
:round(7rand+1,0)ü ( ) X
:If Xø1
:Output(X-1,8,"+
:If Xø8
:Output(X+1,8,"+
:16ü ( ) B
:Lbl 1
:Output(A,B,"=
:B-1ü ( ) B
:getKeyü ( ) K
:If (K=105 or K=25) and Aø1
:A-1ü ( ) A
:If (K=104 or K=34) and Aø8
:A+1ü ( ) A
:If A=X and B=8
:S+1ü ( ) S
:If AøX and B=8
:Then
:ClrHome
:Disp ""," TU AS LOUPE"," UNE PORTE!!"," SCORE:
:Output(4,8,S
:Pause
:Goto Q
:End
:If B=1
:Goto 0
:Goto 1
:Lbl Q
:ClrHome
If S<10:Disp "T'ES NUL !
:ClrHome
S->L1(4
SortD(L1
3->dim(L1
(ln((8*L1+pi/2)²)^3)/log(e²-pi+3)->lSCORE   // L1 est bien une liste
Disp "RECORDS:",L1
Pause
:ClrHome
Cela devrait marcher mais je n'ai pas le temps de vérifier.
Et je n'ai pas envisagé d'optimiser le coeur du code.
Jérôme le 16/10/2011 à 01:12
Parfait pour les meilleurs scores ! Merci bigmouth.gif
Jérôme le 19/10/2011 à 19:09
Boonsoir,
Nouveau problème, cela marcahit et tout mais maintenant j'ai erreur DIM:INVALIDE et ca pointe sur
Code
S->L1(4


(j'ai eu un RESET, si c'est en rapport avec ca...)
sandro le 19/10/2011 à 21:31
ça vient d'une petite erreur dans le code : remplace tous les L1 par lSCORE.

Sandro
Jérôme le 20/10/2011 à 00:16
J'ai réussi, en faites sur l'écran d'accueil j'ai tapé "3->dim(L1" et j'ai appuyé sur "entrer" et sa marchait ! Merci quand même bigmouth.gif
sandro le 20/10/2011 à 18:23
Oui, tu peut aussi tout simplement remplacer su la première lige le lSCORE par L1, ça te résoudra aussi le problème. Mais dans tous les cas, si tu ne suis pas la manip que j'ai expliqué dans mon messages précédent, tu risque de te faire effacer tes scores par un programme (L1 est assez souvant utilisée).

Sandro
xDreams le 20/10/2011 à 19:48
Ok je vais le faire alors :p Merci du conseil ! (Jérôme)

-----
EDIT: Quand j'ai l'affichage des meilleurs scores sa me mets le résultat de l'opération '-- 3.267 etc ... :p
sandro le 20/10/2011 à 20:24
désolé, je me suis trompé moodforlove.gif le code de Linkakro était bien correct, c'est moi qui ai mal lu.

Sandro moodforlove.gif
xDreams le 20/10/2011 à 21:17
Pas de problème ! happy.gif