Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Sam 16 Juil 2011, 20:54
Alors, je suis en train de faire le jeu "Reflex" que beaucoup de monde on du faire sur ce forum...
(je fini le programme simple mais vous allez voir pour la suite, j'attend vos conseil :p )
Déjà, si vous savez les manières les moins lourd en octet pour en faire un.
Il y aura 2 mode :
-un ou ça met par exemple "ALPHA" et on doit appuyer sur la touche alpha ^^
-un déja plus compliqué, ça met le numéro et on doit appuyer sur la touche.
Pour l'instant facile, MAIS: le mode qui rendra ce réflexe spécial^^:
Si ça met "quit" il faudra appuyé sur [2ND]+[MODE]
Si ça met "U" faudra appuyer sur [ALPHA]+[5] !
Voila ! j'ai déja ma ptite idée et bientôt je vous le poste mais j'ai peur que ça va etre un peux lourd en octet.
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Sam 16 Juil 2011, 20:59
Pas mal l'idée, par contre "code touche" ("getkey" en anglais) ne prend en compte qu'une touche à la fois, donc, il faut un code qui prenne en compte très vite les 2 touches (il ne faut pas que la préssion dela seconde soit iniorée car la TI n'est pas prète) l'une après l'autre (dans un ordre précis ou non).
Bonne chance
Sandro
---------------------- mort à l'inutile, place à la mémoire libre et aux programmes
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Sam 16 Juil 2011, 21:27
J'ai l'idée de faire par au début :
Code
X désigne le getKey qu'on dois appuyer
randInt(1,3->P
If P=3::Goto CC
If P=1 and X-21 and X-45 and [4 fleche]:Goto AA
If P=2 and X-32 and X-21 and X-22 and X-23 and ... :Goto BB
Lbl CC
... les touche normal
Lbl AA
les touche bleu (2ND)
Lbl BB
les touceh verte (alpha)
P=1: touche bleu
P=2: touceh verte (j'ai pas mis toute les touches verte impossible)
et pour le double getkey, je sais pas trop par exemple :
Si P=1 (bleu) aucune touche ne marche a part [2nd] puis après ça se débloque.
Voila désolé si c'est un peu embrouillé
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Sam 16 Juil 2011, 21:41
Oui, c'est juste qu'il faut prévoir qu'un utilisateur peu appuyer sur [2nde] ou [alpha] et dessuite après sur la seconde touche, il faut donc que le programme soit déjà prs à réceptionner le second getkey, faute de quoi il risque de ne pas comptabiliser une préssion trop rapide.
Sandro
---------------------- mort à l'inutile, place à la mémoire libre et aux programmes
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Sam 16 Juil 2011, 21:47
Et si on définit deux getkey ??
Dabord: getKey-> K
puis, si k=21 ou 32 et tout
getKey-> H
non ??
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Sam 16 Juil 2011, 21:58
On peut effectivement faire:
Code
:0 -> Z
:Reapeat K
:codetouche -> K
:End
:Reapeat G
codetouche -> G
:End
:If Z et G=B et K=A
:Then
:...
:End
Par contre il faut ajouter un compteur de temps et veiller à ce quel'on ne puisse pas appuyer sur la seconde touche avant le lancement de la seconde touche à cause de celui-ci.
Sandro
---------------------- mort à l'inutile, place à la mémoire libre et aux programmes
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Sam 16 Juil 2011, 22:15
Citer
Code
:0 -> Z
:Reapeat K
:codetouche -> K
:End
:Reapeat G
codetouche -> G
:End
:If Z et G=B et K=A
:Then
:...
:End
Par contre il faut ajouter un compteur de temps et veiller à ce quel'on ne puisse pas appuyer sur la seconde touche avant le lancement de la seconde touche à cause de celui-ci.
que, le compteur temps (pour les scores) se mette en 'pause' quand on a appuyer sur la première touche ?? je comprend pas non plus le code :/
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Sam 16 Juil 2011, 22:31
Désolé, c'est :
Code
:Reapeat K \
:codetouche -> K !boucle qui attend la préssion de la première touche
:End /
:Reapeat G \
codetouche -> G !boucle qui attend la préssion de la 2nde touche
:End /
:If G=B et K=A
:Then
:code si la combinaison de touches est bonne
:Else
:code si la combinaison de touches est fausse
:End
La seconde boucle doit démarer le plus vite possible pour éviter que la préssion de la seconde boucle ne soit ratée.
Sandro
---------------------- mort à l'inutile, place à la mémoire libre et aux programmes
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Sam 16 Juil 2011, 22:54
désolé j'aurai du précisé c'est quoi :
Citer
:If G=B et K=A
B et A ?
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Sam 16 Juil 2011, 23:02
aah Si K=21 (première boucle, si au début on appui sur [2ND]), après si G=B (2eme boucle, le B étant le code de la touche approprié)
c'est ça non ?
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Dim 17 Juil 2011, 0:25
j'ai réussi ! ça marche :p pour l'instant, pas de présentation, pas de score, juste appuyer sur les touches (si on rate ça fais erreur)
voila le code ! il est un peu long, mais bon :p
Code
Lbl 1
1üâ
10entAl–at(1,10)
Rep+entAl–at(1+(Rep>99),5+(Rep=20)-(Rep=30))üX
EffEcr
entAl–at(1,3üP
If P=1 et X-21 et X-24 et X-26 et X-25 et X-34 et X-45:Goto AA
If P=2 et X-31 et X-21 et X-22 et X-23 et X-24 et X-26 et X-25 et X-34 et X-45 et X-32 et X-33 et X-44:Goto BB
Lbl CC
If X=11
"[Y=]üCha ne0
If X=12
"[window]üCha ne0
If X=13
"[zoom]üCha ne0
If X=14
"[trace]üCha ne0
If X=15
"[graphe]üCha ne0
If X=21
"[2ND]üCha ne0
If X=22
"[MODE]üCha ne0
If X=23
"[DEL]üCha ne0
If X=24
"[gauche]üCha ne0
If X=25
"[haut]üCha ne0
If X=26
"[droite]üCha ne0
If X=31
"[ALPHA]üCha ne0
If X=32
"[X,T,Á,n]üCha ne0
If X=33
"[STAT]üCha ne0
If X=34
"[bas]üCha ne0
If X=41
"[MATH]üCha ne0
If X=42
"[APPS]üCha ne0
If X=43
"[PRGM]üCha ne0
If X=44
"[VARS]üCha ne0
If X=45
"[CLEAR]üCha ne0
If X=51
"[ xñ ]üCha ne0
If X=52
"[sin]üCha ne0
If X=53
"[cos]üCha ne0
If X=54
"[tan]üCha ne0
If X=55
"[^]üCha ne0
If X=61
"[xÜ]üCha ne0
If X=62
"[,]üCha ne0
If X=63
"[(]üCha ne0
If X=64
"[)]üCha ne0
If X=65
"[/]üCha ne0
If X=71
"[LOG]üCha ne0
If X=75
"[*]üCha ne0
If X=81
"[LN]üCha ne0
If X=85
"[-]üCha ne0
If X=91
"[STO>]üCha ne0
.1XüY
10partD–c(YüZ
If Yù7 et Y÷10 et Z>1 et Z<5
Then
0üâ
Output(2,3,"[ ]
Output(2,4,8-3partEnt(Y-6)+Z
End
If X=95
"[+]üCha ne0
If X=102
"[0]üCha ne0
If X=103
"[.]üCha ne0
If X=104
"[(-)]üCha ne0
If X=105
"[ENTER]üCha ne0
If â:Output(2,2,Cha ne0
While K-X
codeTouch(üK
If K-X et K
Then
Output(5,1,"erreur!
For(U,1,200:End
Output(5,1,"
End
End
0üK
Goto 1
Lbl AA
If X=11
"[stat plot]üCha ne0
If X=12
"[tblset]üCha ne0
If X=13
"[format]üCha ne0
If X=14
"[calc]üCha ne0
If X=15
"[table]üCha ne0
If X=22
"[QUIT]üCha ne0
If X=23
"[inser]üCha ne0
If X=31
"[A-LOCK]üCha ne0
If X=32
"[LINK]üCha ne0
If X=33
"[LIST]üCha ne0
If X=41
"[TEST]üCha ne0
If X=42
"[ANGLE]üCha ne0
If X=43
"[DRAW]üCha ne0
If X=44
"[DISTR]üCha ne0
If X=51
"[MATRIX]üCha ne0
If X=52
"[Arcsin(]üCha ne0
If X=53
"[Arccos(]üCha ne0
If X=54
"[Arctan(]üCha ne0
If X=55
"[Ä]üCha ne0
If X=61
"[ð(]üCha ne0
If X=62
"[ûû]üCha ne0
If X=63
"[{]üCha ne0
If X=64
"[}]üCha ne0
If X=65
"[ë]üCha ne0
If X=71
"[ý^(]üCha ne0
If X=75
"['[']üCha ne0
If X=81
"[ë^(]üCha ne0
If X=85
"[']']üCha ne0
If X=72
"[u]üCha ne0
If X=73
"[v]üCha ne0
If X=74
"[w]üCha ne0
If X=82
"[L„]üCha ne0
If X=83
"[L…]üCha ne0
If X=84
"[L†]üCha ne0
If X=92
"[L]üCha ne0
If X=93
"[L‚]üCha ne0
If X=94
"[Lƒ]üCha ne0
If X=91
"[RCL]üCha ne0
If X=95
"[mem]üCha ne0
If X=102
"[catalog]üCha ne0
If X=103
"[à]üCha ne0
If X=104
"[Rep]üCha ne0
If X=105
"[ENTRY]
Output(2,2,Cha ne0
While Kø21
codeTouch(üK
End
Output(1,13,"2ND
While K-X
codeTouch(üK
If K-X et K
Output(5,1,"erreur!
For(W,1,200:End
Output(5,1,"
End
0üK
Goto 1
Lbl BB
If X=11
"[F1]üCha ne0
If X=12
"[F2]üCha ne0
If X=13
"[F3]üCha ne0
If X=14
"[F4]üCha ne0
If X=15
"[F5]üCha ne0
If X=41
"[A]üCha ne0
If X=42
"[B]üCha ne0
If X=43
"[C]üCha ne0
If X=51
"[D]üCha ne0
If X=52
"[E]üCha ne0
If X=53
"[F]üCha ne0
If X=54
"[G]üCha ne0
If X=55
"[H]üCha ne0
If X=61
"[I]üCha ne0
If X=62
"[J]üCha ne0
If X=63
"[K]üCha ne0
If X=64
"[L]üCha ne0
If X=65
"[M]üCha ne0
If X=71
"[N]üCha ne0
If X=72
"[O]üCha ne0
If X=73
"[P]üCha ne0
If X=74
"[Q]üCha ne0
If X=75
"[R]üCha ne0
If X=81
"[S]üCha ne0
If X=82
"[T]üCha ne0
If X=83
"[U]üCha ne0
If X=84
"[V]üCha ne0
If X=85
"[W]üCha ne0
If X=91
"[X]üCha ne0
If X=92
"[Y]üCha ne0
If X=93
"[Z]üCha ne0
If X=94
"[Á]üCha ne0
If X=95
"['']üCha ne0
If X=102
"[ ]üCha ne0
If X=103
"[:]üCha ne0
If X=104
"[?]üCha ne0
If X=105
"[SOLVE]üCha ne0
Output(2,2,Cha ne0
While K-31
codeTouch(üK
End
Output(1,11,"ALPHA
While K-X
codeTouch(üK
If K-X et K
Then
Output(5,1,"erreur!
For(W,1,200:End
Output(5,1,"
End
End
0üK
Goto 1
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Dim 17 Juil 2011, 10:28
Pour A et B, c'est bien ça (j'ai oublié de le préciser), sinon, tu peu optimiser ton code:
Code
Lbl 1
1üâ
10entAl–at(1,10
Rep+entAlat(1+(Rep>99),5+(Rep=20)-(Rep=30üX
EffEcr
entAlat(1,3üP
If P=1 somme(X=/={21,24,26,25,34,45:Goto AA
If P=2 somme(X=/={31,21,22,23,24,26,25,34,45,32,33,44:Goto BB
Lbl CC
If X=11
"Y=
If X=12
"window
If X=13
"zoom
If X=14
"trace
If X=15
"graphe
If X=21
"2ND
If X=22
"MODE
If X=23
"DEL
If X=24
"gauche
If X=25
"haut
If X=26
"droite
If X=31
"ALPHA
If X=32
"X,T,Á,n
If X=33
"STAT
If X=34
"bas
If X=41
"MATH
If X=42
"APPS
If X=43
"PRGM
If X=44
"VARS
If X=45
"CLEAR
If X=51
" xñ
If X=52
"sin
If X=53
"cos
If X=54
"tan
If X=55
"^
If X=61
"xÜ
If X=62
",
If X=63
"(
If X=64
")
If X=65
"/
If X=71
"LOG
If X=75
"*
If X=81
"LN
If X=85
"-
If X=91
"STO>
"["+rep+"]" -> Chaîne0
.1XüY
10partD–c(YüZ
If Yù7 et .1Y et Z>1 et Z<5
Then
EffVar â
Output(2,3,"[ ]
Output(2,4,8+Z-3partEnt(Y-6
End
If X=95
"+
If X=102
"0
If X=103
".
If X=104
"(-)
If X=105
"ENTER
"["+rep+"]" -> Chaîne0
If â:Output(2,2,Cha ne0
While K-X
codeTouch(üK
If K-X et K
Then
Output(5,1,"erreur!
For(U,1,200:End
Output(5,1,"
End
End
EffVar KGoto 1
Lbl AA
If X=11
"stat plot
If X=12
"tblset
If X=13
"format
If X=14
"calc
If X=15
"table
If X=22
"QUIT
If X=23
"inser
If X=31
"A-LOCK
If X=32
"LINK
If X=33
"LIST
If X=41
"TEST
If X=42
"ANGLE
If X=43
"DRAW
If X=44
"DISTR
If X=51
"MATRIX
If X=52
"Arcsin(
If X=53
"Arccos(
If X=54
"Arctan(
If X=55
"Ä
If X=61
"ð(
If X=62
"ûû
If X=63
"{
If X=64
"}
If X=65
"ë
If X=71
"ý^(
If X=75
"'['
If X=81
"ë^(
If X=85
"']'
If X=72
"u
If X=73
"v
If X=74
"w
If X=82
"L„
If X=83
"L…
If X=84
"L†
If X=92
"L
If X=93
"L‚
If X=94
"Lƒ
If X=91
"RCL
If X=95
"mem
If X=102
"catalog
If X=103
"à
If X=104
"Rep
If X=105
"ENTRY
"["+Rep+"]" -> Chaîne0
Output(2,2,Cha ne0
While Kø21
codeTouch(üK
End
Output(1,13,"2ND
While K-X
codeTouch(üK
If K-X et K
Output(5,1,"erreur!
For(W,1,200:End
Output(5,1,"
End
EffVar KGoto 1
Lbl BB
If X=11
"F1
If X=12
"F2
If X=13
"F3
If X=14
"F4
If X=15
"F5
If X=41
"A
If X=42
"B
If X=43
"C
If X=51
"D
If X=52
"E
If X=53
"F
If X=54
"G
If X=55
"H
If X=61
"I
If X=62
"J
If X=63
"K
If X=64
"L
If X=65
"M
If X=71
"N
If X=72
"O
If X=73
"P
If X=74
"Q
If X=75
"R
If X=81
"S
If X=82
"T
If X=83
"U
If X=84
"V
If X=85
"W
If X=91
"X
If X=92
"Y
If X=93
"Z
If X=94
"Á
If X=95
"''
If X=102
" "
If X=103
":
If X=104
"?
If X=105
"SOLVE
"["+Rep+"]" -> Chaîne0
Output(2,2,Cha ne0
While K-31
codeTouch(üK
End
Output(1,11,"ALPHA
While K-X
codeTouch(üK
If K-X et K
Then
Output(5,1,"erreur!
For(W,1,200:End
Output(5,1,"
End
End
EffVar KGoto1
ça fait un paquet d'octés d'economisé, surtout au niveau de touches rentrées dans Chaîne0
Sandro
PS : les touches F1 à F6 ne sont présente qu'à partir de la TI83+
---------------------- mort à l'inutile, place à la mémoire libre et aux programmes
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Dim 17 Juil 2011, 18:31
Merci ça fais un paquet d'octet en moin ! et aussi, je pense qu'il y a quelque touches a changer pour les 82, surtout "apps", "matrice" qu'il faut changer
Il faut surtout changer le code en fonction du langage principale de la calculette (français ou anglais :p ) (ce qu'il y a de marqué sur les touches)
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Dim 17 Juil 2011, 18:56
Aie, je viens de changer le code et j'ai un problème avec la ligne:
Code
"["+Ans+"]"->Str0
><
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Dim 17 Juil 2011, 19:19
Dans ce cas là, essaye peut-être avec :
Code
:Ans -> Chaine0
:"["+Chaîne0+"]" -> Chaîne0
Sandro
PS : vérifie aussi qu'il n'y a rien entre la fin des ' If X=xx:"xxxx ' et le bout de code que j'ai indiqué, il ne faut pas modiffier le contennue de Ans.
---------------------- mort à l'inutile, place à la mémoire libre et aux programmes
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Lun 18 Juil 2011, 2:33
Toujours pas :/
Tu l'as essayé il marche avec toi ?
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Lun 18 Juil 2011, 13:36
La dans un programme a part ça marche x)je revérifie encore ton code ....
Et l'erreur, c'est "ERR.DATA TYPE"
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Lun 18 Juil 2011, 18:48
Il n'y a rien entre la série de if et le ans->Str0
J'ai mis, a la fin de la série de if et avant le Ans->Str0 :
Code
Disp Ans
Pause
et il me met l'un des if....
Par contre, la seul fois ou ça marche c'est dans cette petite partie de code:
Code
If X=95
"+
If X=102
"0
If X=103
".
If X=104
"(-)
If X=105
"ENTER
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Lun 18 Juil 2011, 19:27
Est-ce que tu as le cable pour relier à l'ordi, si oui, pourrais-tu s'il te plait m'envoyer le programme en format calculatrice (***.82p, ***.83p, ou ***.8xp)?
Sinon, reverrifie le code en entier.
Sandro
---------------------- mort à l'inutile, place à la mémoire libre et aux programmes
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Mar 19 Juil 2011, 18:12
mais, même les ligne:
Code
5
"["+Ans+"]"->Str0
Crée ERR:DATA TYPE sur le +
par contre "["+Str0+"]"->Str0 marche...
Et il y a un problème au niveau de :
Code
If P=1 somme(X=/={21,24,26,25,34,45:Goto AA
If P=2 somme(X=/={31,21,22,23,24,26,25,34,45,32,33,44:Goto BB
j'ai éssayé aussi If p=1 and somme.... mais il veut pas... ( pour lui, si p=1:goto AA sans regarder les valeur de X interdites)
Ce programme me prend la tête car il y a plien de problème totalement illogique (par exemple un err:syntaxe sur le effVar N )
J'ai réussi, a faire un programme qui fonctionne correctement mais il y a a chaque if des "-> Str0" et a la place de "somme(X#..." il y a des "and" ...
j'ai mis 1 seul getkey tout a la fin au lieux de 3 labels différent ( ça sera plus facile pour les scores que je mettrais bientôt)
il y a quelque Goto qui ralentissent un peu le programme mais sur ma calculette il est plutôt rapide.
voila le code
EDIT: voila les scores !
Code
100üS
EffEcr
Output(8,1,"Scores:
Lbl 1
Output(2,2," "
Output(1,11," "
10entAl–at(1,10
Rep+entAl–at(1+(Rep>99),5+(Rep=20)-(Rep=30üX
EffEcr
entAl–at(1,3üP
If P=1
Then
If X=21 ou X=45 ou X=24 ou X=26 ou X=25 ou X=34:3üP
End
If P=2
Then
If X=31 ou X=21 ou X=22 ou X=23 ou X=32 ou X=33 ou X=44 ou X=45 ou X=24 ou X=26 ou X=25 ou X=34:3üP
End
If P=1:Goto AA
If P=2:Goto BB
Lbl CC
If X=11
"Y=üCha ne0
If X=12
"windowüCha ne0
If X=13
"zoomüCha ne0
If X=14
"traceüCha ne0
If X=15
"graphüCha ne0
If X=21
"2NDüCha ne0
If X=22
"MODEüCha ne0
If X=23
"DELüCha ne0
If X=24
"gaucheüCha ne0
If X=25
"hautüCha ne0
If X=26
"droiteüCha ne0
If X=31
"ALPHAüCha ne0
If X=32
"X,T,Á,nüCha ne0
If X=33
"STATüCha ne0
If X=34
"basüCha ne0
If X=41
"MATHüCha ne0
If X=42
"APPSüCha ne0
If X=43
"PRGMüCha ne0
If X=44
"VARSüCha ne0
If X=45
"CLEARüCha ne0
If X=51
"xñüCha ne0
If X=52
"sinüCha ne0
If X=53
"cosüCha ne0
If X=54
"tanüCha ne0
If X=55
"^üCha ne0
If X=61
"xÜüCha ne0
If X=62
",üCha ne0
If X=63
"(üCha ne0
If X=64
")üCha ne0
If X=65
"/üCha ne0
If X=71
"LOGüCha ne0
If X=75
"*üCha ne0
If X=81
"LNüCha ne0
If X=85
"-üCha ne0
If X=91
"STO>üCha ne0
If X=92
"1üCha ne0
If X=93
"2üCha ne0
If X=94
"3üCha ne0
If X=82
"4üCha ne0
If X=83
"5üCha ne0
If X=84
"6üCha ne0
If X=72
"7üCha ne0
If X=73
"8üCha ne0
If X=74
"9üCha ne0
If X=95
"+üCha ne0
If X=102
"0üCha ne0
If X=103
".üCha ne0
If X=104
"(-)üCha ne0
If X=105
"ENTERüCha ne0
Goto 99
Lbl AA
If X=11
"stat plotüCha ne0
If X=12
"tblsetüCha ne0
If X=13
"formatüCha ne0
If X=14
"calcüCha ne0
If X=15
"tableüCha ne0
If X=22
"QUITüCha ne0
If X=23
"inserüCha ne0
If X=31
"A-LOCKüCha ne0
If X=32
"LINKüCha ne0
If X=33
"LISTüCha ne0
If X=41
"TESTüCha ne0
If X=42
"ANGLEüCha ne0
If X=43
"DRAWüCha ne0
If X=44
"DISTRüCha ne0
If X=51
"MATRIXüCha ne0
If X=52
"Arcsin(üCha ne0
If X=53
"Arccos(üCha ne0
If X=54
"Arctan(üCha ne0
If X=55
"ÄüCha ne0
If X=61
"ð(üCha ne0
If X=62
"ûûüCha ne0
If X=63
"{üCha ne0
If X=64
"}üCha ne0
If X=65
"ëüCha ne0
If X=71
"ý^(üCha ne0
If X=75
"'['üCha ne0
If X=81
"ë^(üCha ne0
If X=85
"']'üCha ne0
If X=72
"uüCha ne0
If X=73
"vüCha ne0
If X=74
"wüCha ne0
If X=82
"L„üCha ne0
If X=83
"L…üCha ne0
If X=84
"L†üCha ne0
If X=92
"LüCha ne0
If X=93
"L‚üCha ne0
If X=94
"LğCha ne0
If X=91
"RCLüCha ne0
If X=95
"memüCha ne0
If X=102
"catalogüCha ne0
If X=103
"àüCha ne0
If X=104
"AnsüCha ne0
If X=105
"ENTRYüCha ne0
Goto 99
Lbl BB
If X=11
"F1üCha ne0
If X=12
"F2üCha ne0
If X=13
"F3üCha ne0
If X=14
"F4üCha ne0
If X=15
"F5üCha ne0
If X=41
"AüCha ne0
If X=42
"BüCha ne0
If X=43
"CüCha ne0
If X=51
"DüCha ne0
If X=52
"EüCha ne0
If X=53
"FüCha ne0
If X=54
"GüCha ne0
If X=55
"HüCha ne0
If X=61
"IüCha ne0
If X=62
"JüCha ne0
If X=63
"KüCha ne0
If X=64
"LüCha ne0
If X=65
"MüCha ne0
If X=71
"NüCha ne0
If X=72
"OüCha ne0
If X=73
"PüCha ne0
If X=74
"QüCha ne0
If X=75
"RüCha ne0
If X=81
"SüCha ne0
If X=82
"TüCha ne0
If X=83
"UüCha ne0
If X=84
"VüCha ne0
If X=85
"WüCha ne0
If X=91
"XüCha ne0
If X=92
"YüCha ne0
If X=93
"ZüCha ne0
If X=94
"ÁüCha ne0
If X=95
"''üCha ne0
If X=102
" üCha ne0
If X=103
":üCha ne0
If X=104
"?üCha ne0
If X=105
"SOLVEüCha ne0
Lbl 99
"["+Cha ne0+"]"üCha ne0
Output(2,2,Cha ne0
If P=2:Then
While K-31
codeTouch(üK
If K-31 et K:Goto KK
S-1üS
Output(8,8," "
Output(8,8,S
End
Output(1,11,"ALPHA
End
If P=1:Then
While K-21
codeTouch(üK
If K-21 et K:Goto KK
S-1üS
Output(8,8," "
Output(8,8,S
End
If Q:Output(1,13,"2ND
End
While K-X
codeTouch(üK
If K-X et K
Then
Lbl KK
Output(5,1,"erreur!
S-50üS
For(W,1,200:End
Output(5,1,"
End
S-1üS
Output(8,8," "
Output(8,8,S
End
S+25üS
Output(8,8," "
Output(8,8,S
EffVar K
Goto 1
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Mar 19 Juil 2011, 21:20
Tout marche !! oh lala c'est pas possible tout marche ! je ne sais vraiment pas pourquoi ça n'avais pas marché avant... aah jsuis content allé pour la peine je met le code avec les majuscule, et en français et avec tout les octet d'économisé ! ^^ sinon j'aimerais savoir comment on pose un screen shoot ? j'en ai fais un mais je n'arrive pas a le mettre, il faut un site d’hébergement je présume ?
voila le code
Code
100üS
EffEcr
Output(8,1,"Score:
Lbl 1
Output(2,2,"
Output(1,11,"
10entAl–at(1,10
Rep+entAl–at(1+(Rep>99),5+(Rep=20)-(Rep=30üX
entAl–at(1,3üP
If P=1 et prod(Xø{21,45,24,26,25,34:Goto AA
If P=2 et prod(Xø{31,21,22,23,32,33,44,45,24,26,25,34:Goto BB ///// pour les
Ti 82, rajoutez 11,12,13,14,15 \\\
Lbl CC
3üP
If X=11
"F(X)
If X=12
"FENETRE
If X=13
"ZOOM
If X=14
"TRACE
If X=15
"GRAPHE
If X=21
"2NDE
If X=22
"MODE
If X=23
"SUPPR
If X=24
"GAUCHE
If X=25
"HAUT
If X=26
"DROITE
If X=31
"ALPHA
If X=32
"X,T,Á,n
If X=33
"STATS
If X=34
"BAS
If X=41
"MATH
If X=42
"APPS
If X=43
"PRGM
If X=44
"VAR
If X=45
"ANNUL
If X=51
"xñ
If X=52
"sin
If X=53
"cos
If X=54
"tan
If X=55
"^
If X=61
"xÜ
If X=62
",
If X=63
"(
If X=64
")
If X=65
"/
If X=71
"LOG
If X=75
"*
If X=81
"LN
If X=85
"-
If X=91
"STO>
If X=92
"1
If X=93
"2
If X=94
"3
If X=82
"4
If X=83
"5
If X=84
"6
If X=72
"7
If X=73
"8
If X=74
"9
If X=95
"+
If X=102
"0
If X=103
".
If X=104
"(-)
If X=105
"ENTER
"["+Rep+"]"üCha ne0
Goto 99
Lbl AA
If X=11
"STAT PLOT
If X=12
"TBLSET
If X=13
"FORMAT
If X=14
"CALC
If X=15
"table
If X=22
"QUITTER
If X=23
"INSERER
If X=31
"VERR A
If X=32
"ECHANGER
If X=33
"LIST
If X=41
"TESTS
If X=42
"ANGLE
If X=43
"DESSIN
If X=44
"DISTRIB
If X=51
"MATRICE
If X=52
"Arcsin(
If X=53
"Arccos(
If X=54
"Arctan(
If X=55
"Ä
If X=61
"ð(
If X=62
"ûû
If X=63
"{
If X=64
"}
If X=65
"ë
If X=71
"ý^(
If X=75
"'['
If X=81
"ë^(
If X=85
"']'
If X=72
"u
If X=73
"v
If X=74
"w
If X=82
"L„
If X=83
"L…
If X=84
"L†
If X=92
"L
If X=93
"L‚
If X=94
"Lƒ
If X=91
"RCL
If X=95
"MEM
If X=102
"CATALOG
If X=103
"à
If X=104
"ANS
If X=105
"ENTRY
"["+Rep+"]"üCha ne0
Goto 99
Lbl BB
If X=11 /// (83+ et supérieur)
"F1
If X=12 /
"F2
If X=13 /
"F3
If X=14 /
"F4
If X=15 /
"F5
If X=41
"A
If X=42
"B
If X=43
"C
If X=51
"D
If X=52
"E
If X=53
"F
If X=54
"G
If X=55
"H
If X=61
"I
If X=62
"J
If X=63
"K
If X=64
"L
If X=65
"M
If X=71
"N
If X=72
"O
If X=73
"P
If X=74
"Q
If X=75
"R
If X=81
"S
If X=82
"T
If X=83
"U
If X=84
"V
If X=85
"W
If X=91
"X
If X=92
"Y
If X=93
"Z
If X=94
"Á
If X=95
"''
If X=102
"
If X=103
":
If X=104
"?
If X=105
"SOLVE
"["+Rep+"]"üCha ne0
Lbl 99
Output(2,2,Cha ne0
If P=2:Then
While K-31
codeTouch(üK
If K-31 et K:Goto KK
S-1üS
Output(8,8,"
Output(8,8,S
If S<1:Goto S
End
Output(1,11,"ALPHA
End
If P=1:Then
While K-21
codeTouch(üK
If K-21 et K:Goto KK
S-1üS
Output(8,8,"
Output(8,8,S
If S<1:Goto S
End
If Q:Output(1,13,"2ND
End
While K-X
codeTouch(üK
If K-X et K
Then
Lbl KK
Output(5,1,"erreur!
S-50üS
If S<1:Goto S
For(W,1,200:End
Output(5,1,"
End
S-1üS
Output(8,8,"
Output(8,8,S
If S<1:Goto S
End
S+25üS
Output(8,8,"
Output(8,8,S
EffVar K
Goto 1
Lbl S
Output(4,4,"PERDU !
PS: par contre, il y a plus de chance de tomber sur une touche normal qu'une touche [2ND] ou [ALPHA]
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"
Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Mar 19 Juil 2011, 21:27
Bravo,
j'ai à peine trouvé une petite erreur:
Code
While K-X
codeTouch(üK
If K-X et K
Then
Lbl KK
Output(5,1,"erreur! //C'EST EN MINISCULES
S-50üS
If S<1:Goto S
For(W,1,200:End
Output(5,1,"
End
S-1üS
Output(8,8,"
Output(8,8,S
If S<1:Goto S
End
S+25üS
Output(8,8,"
Output(8,8,S
EffVar K
Goto 1
Lbl S
Output(4,4,"PERDU !
Pour l'optimistion, j'ai également trouvé un tout petit truc : pour les Lbl/Goto, tu utilise 2 symboles (2 octés) alors que 1 te suffit (tu as moins de 37 Lbl et tu ne les mets pas de manière à rappeler leur signification (ex : EX=example ; PY=pythagore ; ...))
Sandro
PS : heureusement que tu as trouvé ce soir, sinon tu aurrais du attendre jusqu'à vendredi soir voire samedi la semaine prochaine pour avoir une réponse)
---------------------- mort à l'inutile, place à la mémoire libre et aux programmes
Autorisation : Membre
Nb de messages : 178
Inscrit le : Sam 02 Avr 2011, 12:53
Posté le : Mar 19 Juil 2011, 21:41
C'est édité, label diminué a 1 octet, quelques broutilles de changé
Par contre j'ai enlever ces lignes:
Code
.1XüY
10partD–c(YüZ
If Yù7 et Y÷10 et Z>1 et Z<5
Then
0üâ
Output(2,3,"[ ]
Output(2,4,8-3partEnt(Y-6)+Z
End
c'est sans doute ça qui faisais bugé (même si je mettais la ligne avec Ans et Str0 au début et a la fin) si tu veux les remettre pour gagner quelque octet ^^ moi j'y touche plus xD
---------------------- "Des millions de gens ont vu tomber une pomme, Newton est le seul a s'être demandé pourquoi ."
"L'urgent est fait, l'impossible est en cours.
un probléme a toujours une solution, la solution est de trouver le probléme, pour les miracles, prévoir un délai ...
"