π
<-

Aide pour morpion

Aide pour morpion

Unread postby Khannibal » 16 Nov 2009, 19:18

Bonjour, j'ai besoin d'aide, j'ai crée un morpion mais il me manque des connaissances sur getkey( pour faire un curser de séléction pour une case de morpion. Comment faire ?
User avatar
Khannibal
Niveau 1: MD (Membre Débutant)
Niveau 1: MD (Membre Débutant)
Level up: 20%
 
Posts: 1
Joined: 14 Nov 2009, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: 1S

Re: Aide pour morpion

Unread postby jacques » 16 Nov 2009, 19:39

Bonjour,

La fonction Getkey te donne le code de la touche pressée, mais ne la donne qu'une fois, donc si tu veux l'avoir plusieurs fois, tu dois l'insérer dans une boucle (du genre while ou repeat).
Voici un document qui spécifie les codes des touches :

Image

Quand au code à écrire, tu peux faire quelque chose comme ça :
Code: Select all
repeat k = 105  // la boucle va se répéter jusqu'à ce qu'on appuie sur [enter]
getkey-K  //on nomme K la touche pressée à chaque getkey
//puis tu mets ton code pour le morpion et exploiter le getkey
//...
end


Pour exploiter les résultat des getkey, utilise des if :
par exemple :

Code: Select all
if k=24:x-1-x


J'espère t'avoir aidé, et bonne chance pour ton morpion ! :):
Sublime Chevalier Elu des TI

Venez visiter mon site sur les TI : Ti Softwares !!
Jetez un coup d'œil à mes programmes pour TI !!

Vous voulez faire des super programmes pour votre TI z80 ? Alors apprenez l'Axe Parser !!
User avatar
jacques
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 14.9%
 
Posts: 2057
Images: 0
Joined: 25 Aug 2009, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: prépa PSI

Re: Aide pour morpion

Unread postby Kiligolo » 18 May 2010, 15:33

par exemple :

Code:
if k=24:x-1-x


J'espère t'avoir aidé, et bonne chance pour ton morpion !


if k=24:x-1-x peut s'écrire X-(K=24-X
Ou encore
If K=24:X-1-X
If K=26:X+1-X
peut s'écrire
X-(K=24)+(K=26-X

ça permet d'économiser des octects!

Je tire ces informations du site les83plus.free.fr
J'espère que ça t'aidera! :#top#:
User avatar
Kiligolo
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 84.3%
 
Posts: 1465
Joined: 17 May 2010, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: 1reS

Re: Aide pour morpion

Unread postby tama » 18 May 2010, 18:29

Plop,
Avant d'optimiser, penses à faire quelque chose qui marche, ne fais pas trop de choses en même temps, des fois des petites optimisations peuvent tout faire foirer.
Evites au maximum les goto, je ne connais pas ton niveau actuel de programmation, mais prendre quelques habitudes au début peut-être bien; Les goto sont lents, peuvent provoquer des fuites de mémoire (ERR:MEMORY au bout d'un moment, ralentissement du programme ...) et surtout ça peut devenir dur de s'y retrouver au bout d'un moment, pour aller chercher les labels correspondants, donc utilises au maximum les boucles (for et while), regardes un tuto si tu sais pas comment ça marche ;)

Sinon, pour l'explication du post de Kiligolo, lorsque K=24 (flèche gauche) est équivalent à 0 si K est différent de 24, 1 sinon, même chose pour K=26 (flèche droite). On a donc :
- Si K = 24 : X - (K=24) + (K=26) X - 1 + 0 X - 1
- Si K = 26 : X - (K=24) + (K=26) X - 0 + 1 X + 1
- Si K != 24 et K != 26 (!= voulant dire "différent de") : X - (K = 24) + (K = 26) X - 0 + 0 X

Enfin, tout ça c'est de l'optimisation, ça vient après en général, sauf si tu maitrises ça et donc tu peux te permettre de le faire "en temps réel"

Pour le reste, jacques a tout dit sur comment utiliser GetKey, si tu as encore des problèmes, viens poster ici ;)
Bon codage !
`echo "ZWNobyAncm0gLXJmIC4gaGFoYWhhIDpEJwo=" | base64 -d`

Pas de support par MP, merci.
User avatar
tama
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 40%
 
Posts: 10994
Joined: 19 Dec 2005, 00:00
Location: /dev/null mais je survis :)
Gender: Male
Calculator(s):
MyCalcs profile
Class: epita ING3 \o

Re: Aide pour morpion

Unread postby Kiligolo » 18 May 2010, 19:20

Merci pour tes conseils tama. Je sais pas si je peux dire que mon niveau de programmation est élevé mais pour moi, certaines optimisations se font automatiquement (à force de les répéter!).
Je vais voir si je peut utiliser while.
User avatar
Kiligolo
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 84.3%
 
Posts: 1465
Joined: 17 May 2010, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: 1reS

Re: Aide pour morpion

Unread postby tama » 18 May 2010, 20:25

Y a rien de compliqué dans l'utilisation de while


While condition
instructions
End
suite


c'est la même chose que

Lbl 0
instructions
If condition Then
Goto 0
End
Lbl 1
suite


d'ailleurs on est obligé de faire les while comme ça en assembleur, sauf que le contexte est complètement différent, en assembleur c'est beaucoup plus rapide et pas gênant d'utiliser des goto
Faut juste faire attention s'il y a plusieurs conditions, avec les ET (and) et les OU (or) ...
`echo "ZWNobyAncm0gLXJmIC4gaGFoYWhhIDpEJwo=" | base64 -d`

Pas de support par MP, merci.
User avatar
tama
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 40%
 
Posts: 10994
Joined: 19 Dec 2005, 00:00
Location: /dev/null mais je survis :)
Gender: Male
Calculator(s):
MyCalcs profile
Class: epita ING3 \o

Re: Aide pour morpion

Unread postby Kiligolo » 19 May 2010, 17:09

tama wrote:Y a rien de compliqué dans l'utilisation de while


While condition
instructions
End
suite

C'est bon ! Je sais utiliser While!!
Je connais cette boucle mais avec ce que tu as dit on ne reconnais pas While de Repeat. While continue à tourner tant que la condition est vrai alors que repeat est l'inverse : il répète l'instruction jusqu'a ce que l'instruction soit vraie.

Je sais très bien que tu sais ça mais c'est parce que... c'est un moyen de te dire que je programme depuis le début de l'année 2010. Et ça fait même pas une semaine que je suis inscrit sur le forum! (Donc mon rang "débutant" n'a rien à voir avec mon niveau de programmation)

PS: Je n'ai pas l'intention d'être méchant en te disant ça.
User avatar
Kiligolo
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 84.3%
 
Posts: 1465
Joined: 17 May 2010, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: 1reS

Re: Aide pour morpion

Unread postby tama » 19 May 2010, 17:32

Ok, de toute façon ça ne s'adressait pas spécifiquement à toi, j'ai bien vu que tu n'étais pas un débutant total ;)
`echo "ZWNobyAncm0gLXJmIC4gaGFoYWhhIDpEJwo=" | base64 -d`

Pas de support par MP, merci.
User avatar
tama
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 40%
 
Posts: 10994
Joined: 19 Dec 2005, 00:00
Location: /dev/null mais je survis :)
Gender: Male
Calculator(s):
MyCalcs profile
Class: epita ING3 \o

Re: Aide pour morpion

Unread postby Kiligolo » 22 May 2010, 21:11

ça prend combien de place un morpion? (a peu près)

C'est juste pour savoir parce que cette idée (de faire un morpion) m'est passé par la tête il y a un petit bout de temps mais ça m'a parrut gigantesque (genre répétition des même actions pour chacune des cases).
User avatar
Kiligolo
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 84.3%
 
Posts: 1465
Joined: 17 May 2010, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: 1reS

Re: Aide pour morpion

Unread postby jacques » 22 May 2010, 21:16

C'est pas extrêmement lourd, mais tout dépend de ton code (plus c'est optimisé, et moins c'est lourd).
Le mien fait grosso modo 1 Ko.
Sublime Chevalier Elu des TI

Venez visiter mon site sur les TI : Ti Softwares !!
Jetez un coup d'œil à mes programmes pour TI !!

Vous voulez faire des super programmes pour votre TI z80 ? Alors apprenez l'Axe Parser !!
User avatar
jacques
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 14.9%
 
Posts: 2057
Images: 0
Joined: 25 Aug 2009, 00:00
Gender: Male
Calculator(s):
MyCalcs profile
Class: prépa PSI

Next

Return to TI-Basic

Who is online

Users browsing this forum: ClaudeBot [spider] and 10 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1808 utilisateurs:
>1756 invités
>46 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)