Avertissement :Il s'agit d'une page optimisée pour la navigation mobile. Voir la
page originale.
Jeu de morpion multijoueur
nanoseb le 29/08/2008 à 13:57
bonjour
je poste ici deux nouvelles versions de mon morpion
- une a deux joueurs sur une ti et l'autre à deux joueurs sur deux ti
( les touches sont celles de 1 à 9, elles représentes les cases)
et voici pour
les .83p
la première version (629o)
Code
2ü (
) D
0ü (
) T
0ü (
) U
{3,3}ü (
) dim([A]
Lbl Á
0ü (
) G
0ü (
) C
0ü (
) A
0ü (
) B
0ü (
) H
0ü (
) L
ClrHome
Fill(0,[A]
Output(1,1,">< +--+--+--+() ! ! ! ! +--+--+--+ ! ! ! ! +--+--+--+ ! ! ! ! +--+--+--+
Output(2,1,T
Output(2,15,U
Lbl 2
abs(D-3)ü (
) D
Output(8,8,"><
If D=2
Output(8,8,"()
0ü (
) A
Lbl 1
getKeyü (
) C
round(C/10,0)-6ü (
) A
C-61-A10ü (
) B
If B÷ (
) 0 or A÷ (
) 0 or Cù (
) 95
Goto 1
If [A](A,B)=0
Then
Dü (
) [A](A,B)
Else
Goto 1
End
3B+2ü (
) B
2Aü (
) A
If D=2
Output(A,B,"()
If D=1
Output(A,B,"><
H+1ü (
) H
If Hù (
) 5
Then
If H=9
3ü (
) G
For(R,1,3
If ([A](R,1)=D and [A](R,2)=D and [A](R,3)=D) or ([A](1,R)=D and [A](2,R)=D and [A](3,R)=D) or ([A](1,1)=D and [A](2,2)=D and [A](3,3)=D) or ([A](1,3)=D and [A](2,2)=D and [A](3,1)=D)
Dü (
) G
End
End
If Gø0
Goto 3
Goto 2
Lbl 3
ClrHome
If G=1
Then
Output(4,5,">< A GAGNE
T+1ü (
) T
End
If G=2
Then
Output(4,5,"() A GAGNE
U+1ü (
) U
End
If G=3
Output(4,5,"MATCH NUL
Pause
Goto Á
2ème version (785o)
Code
2ü (
) D
2ü (
) Á
Menu(">MORPION V 2.0< ","><",A,"()",B
Lbl A
1ü (
) Á
Lbl B
0ü (
) T
0ü (
) U
Lbl Á
0ü (
) G
0ü (
) C
0ü (
) A
0ü (
) B
0ü (
) H
ClrHome
{3,3}ü (
) dim([A]
Fill(0,[A]
Output(1,1,">< +--+--+--+() ! ! ! ! +--+--+--+ ! ! ! ! +--+--+--+ ! ! ! ! +--+--+--+
Output(2,1,T
Output(2,15,U
Lbl 2
0ü (
) X
0ü (
) Y
abs(D-3)ü (
) D
Output(8,8,"><
If D=2
Output(8,8,"()
If Á=D
Then
Lbl 1
getKeyü (
) C
round(C/10,0)-6ü (
) A
C-61-A10ü (
) B
If B÷ (
) 0 or A÷ (
) 0 or Cù (
) 95
Goto 1
If [A](A,B)=0
Then
Dü (
) [A](A,B)
Else
Goto 1
End
1ü (
) X
Pause
Pause
End
If ÁøD
Then
While Xø1
Get(X
End
Get([A]
End
H+1ü (
) H
0ü (
) X
For(N,1,3
For(I,1,3
2Iü (
) A
3N+2ü (
) B
If [A](I,N)=1
Output(A,B,"><
If [A](I,N)=2
Output(A,B,"()
End
End
If Á=1 and Hù (
) 5
Then
If H=9
3ü (
) G
For(R,1,3
If ([A](R,1)=D and [A](R,2)=D and [A](R,3)=D) or ([A](1,R)=D and [A](2,R)=D and [A](3,R)=D) or ([A](1,1)=D and [A](2,2)=D and [A](3,3)=D) or ([A](1,3)=D and [A](2,2)=D and [A](3,1)=D)
Dü (
) G
End
1ü (
) Y
Pause
Pause
End
If Á=2
Then
While Yø0
Get(Y
End
Get(G
End
If Gø0
Goto 3
Goto 2
Lbl 3
ClrHome
If G=1
Then
Output(4,5,">< A GAGNE
T+1ü (
) T
End
If G=2
Then
Output(4,5,"() A GAGNE
U+1ü (
) U
End
If G=3
Output(4,5,"MATCH NUL
Pause
Goto Á
EDIT : mise a jour des codes (30/08/08 )
Sangohan38 le 29/08/2008 à 19:06
A mon avis, il serait plus imple et plus économique en octets d'utiliser des listes au lieu des matrices.
De plus, évite d'utiliser les then/end car ils ralentissent le programme.
Dans ton cas, au lieu de mettre:
Met plutôt:
Sangohan38
nanoseb le 29/08/2008 à 19:13
merci bonne idée je vais faire çà et mettre a jour le 1er postwebmaster le 30/08/2008 à 12:35
Premier sujet de l'année scolaire 2008-2009 ! Ca sent la rentrée...
@+ Le Webmaster

mad67 le 30/08/2008 à 13:37
dire que j'ai failli parier que le forum était mort
sinon bon programme malgré quelques ralongesnanoseb le 30/08/2008 à 18:20
j'ai un peu amélioré mon code et je suis en train de faire un avec une "intelligence artificiel" je posterai le code une fois finiSangohan38 le 30/08/2008 à 20:13
Pendant les vacances scolaires, les forums sont en générale moins actifs.
Sinon, pour le code, on peut encore le réduire:
Code
If [A](A,B)=0
Then
Dü (
) [A](A,B)
Else
Goto 1
Devient:
Code
If [A](A,B)=0
Dü (
) [A](A,B)
If [A](A,B)[différent de]0
Goto 1
De plus:
Code
Lbl 3
ClrHome
If G=1
Then
Output(4,5,">< A GAGNE
T+1ü (
) T
End
If G=2
Then
Output(4,5,"() A GAGNE
U+1ü (
) U
End
If G=3
Output(4,5,"MATCH NUL
Pause
Goto Á
Peut devenir:
Code
Lbl 3
ClrHome
Output(4,8,"A GAGNE
If G=1
Output(4,5,"><
If G=1
T+1ü (
) T
If G=2
Output(4,5,"()
If G=2
U+1ü (
) U
If G=3
Output(4,5,"MATCH NUL
Pause
Goto Á
Sangohan38
mad67 le 31/08/2008 à 10:03
après il fau t arreter de descendre le programme.
d'ailleur pour la nouvelle version de pes sans lag j'ai besoin d'aide pour raccourcir et atteindre l'objectif de 1 match = 1 minute je montrerais le code bientot.Sangohan38 le 31/08/2008 à 11:55
Je ne descend pas le programme mais je chercche à montrer comment l'améliorer.
Pour ton programme, ce n'est pas le bon sujet.
Sangohan38ratuss le 31/08/2008 à 11:59
Code
If [A](A,B)[différent de]0
Goto 1
Dü (
) [A](A,B)
ca revient au même que :
Code
If [A](A,B)
Goto 1
Dü (
) [A](A,B)
:p
Chwood le 23/09/2008 à 17:00
Bah pour l'instant ça a l'air de marcher ... et du premier coup en plus !!!
Merci beaucoup
Chwood

Avertissement :Il s'agit d'une page optimisée pour la navigation mobile. Voir la
page originale.