> Tous les forumsAutres langages

 [Pascal] jeux de "X" et "O"
Statut du sujet : NON RESOLU Imprimer
 chourik2002
  Posté le 27/04/2003 @ 11:57  
 Petit astucien

196 Messages
je m'en doute que vous avez de viner de quel jeux je parle !!(le jeux des crois et des ronds) le prob ici c'est : > comment empecher un joueur de metre son jeton (X ou O )dans une place deja utilisé ??? > pour savoir si les jetons sont aligné il ya 3 cas + les jeton sont sur la meme ligne + les jeton sont sur la meme colone + les jeton sont sur la Diagonale merci de m'aider a terminer ce prob!!! voici le programe en PASCAL : NB "" pour les chifres qui apparessent a la fin du jeux c'est les coordonnées des jetons "" {je 1er joueur joue avec les "O" et le 2eme joueur joue avec "X" "8" pour le haut "6" pour la droite "4" pour la gauche "2" pour le bas "1" pour bas-gauche "3" pour bas-droite "7" pour haut-gauche "9" pour haut-droite "0" pour valider} program kjeux; Uses wincrt; Var a,n,m,i,k,l,c: integer ; t1,t2:array[1..7]of integer; procedure saisie; {procedure de remplissage de la grille} begin l:=7; c:=9;k:=6 ; for n:=1 to 3 do for m:=1 to 3 do begin gotoxy((l-k)+n*k,(c-k)+m*k); write('+'); gotoxy(l-k,c-k); end; end; procedure pos1(l,c,k:integer); {***} begin gotoxy(l+k,c+k); write('O'); end; procedure joueur1; {le jeux pour le joueur 2} begin l:=13; c:=15;k:=6 ; gotoxy(l,c);write('O'); repeat case ReadKey of '6' : if (l in[7..13]) then begin gotoxy(l,c); write('+'); l:=l+k; gotoxy(l,c); write('O'); end; '4' : if (l in[13..19]) then begin gotoxy(l,c); write('+'); l:=l-k; gotoxy(l,c); write('O'); end; '2' : if (c in[9..15]) then begin gotoxy(l,c); write('+'); c:=c+k; gotoxy(l,c); write('O'); end; '8' : if (c in[15..21]) then begin gotoxy(l,c); write('+'); c:=c-k; gotoxy(l,c); write('O'); end; '3' : if (l =13) then begin gotoxy(l,c); write('+'); c:=c+k;l:=l+k; gotoxy(l,c); write('O'); end; '1' : if (l =13) then begin gotoxy(l,c); write('+'); c:=c+k;l:=l-k; gotoxy(l,c); write('O'); end; '9' : if (l =13) then begin gotoxy(l,c); write('+'); c:=c-k;l:=l+k; gotoxy(l,c); write('O'); end; '7' : if (l =13) then begin gotoxy(l,c); write('+'); c:=c-k;l:=l-k; gotoxy(l,c); write('O'); end; end; until readkey ='0'; end; procedure pos2(l,c,k:integer); {***} begin l:=13; c:=15;k:=6 ; gotoxy(l,c); write('X'); end; procedure joueur2; {le jeux pour le joueur 2} begin l:=13; c:=15;k:=6 ; repeat case ReadKey of '6' : if (l in[7..13]) then begin gotoxy(l,c); write('+'); l:=l+k; gotoxy(l,c); write('X'); end; '4' : if (l in[13..19]) then begin gotoxy(l,c); write('+'); l:=l-k; gotoxy(l,c); write('X'); end; '2' : if (c in[9..15]) then begin gotoxy(l,c); write('+'); c:=c+k; gotoxy(l,c); write('X'); end; '8' : if (c in[15..21]) then begin gotoxy(l,c); write('+'); c:=c-k; gotoxy(l,c); write('X'); end; '3' : if (l =13) then begin gotoxy(l,c); write('+'); c:=c+k;l:=l+k; gotoxy(l,c); write('X'); end; '1' : if (l =13) then begin gotoxy(l,c); write('+'); c:=c+k;l:=l-k; gotoxy(l,c); write('X'); end; '9' : if (l =13) then begin gotoxy(l,c); write('+'); c:=c-k;l:=l+k; gotoxy(l,c); write('X'); end; '7' : if (l =13) then begin gotoxy(l,c); write('+'); c:=c-k;l:=l-k; gotoxy(l,c); write('X'); end; end; until readkey ='0'; end; Begin clrscr; saisie; pos1(l,c,k); for a:=1 to 3 do begin joueur1; t1[a]:=l; t1[a+1]:=c; t2[a]:=l; t2[a+1]:=c; pos2(l,c,k); joueur2; end; for i:=1 to 6 do write(t1[i],' ',t2[i]); end.
 Afficher le profil de chourik2002Envoyer un message privé à chourik2002
 
 
Publicité
 CaptN_dav  Posté le 28/04/2003 à 09:16  
Petit astucien

426 Messages
je suis pas tres sur mais je pense qu'un module test doit se placer avant chaque coup procedure ou fonction test fonction test(a,b: integer):boolean; local:=boolean; begin local:=false; if (??? case vide ???) then local end; j'avoue que je seche un peu, courage ++
Afficher le profil de CaptN_davEnvoyer un message privé à CaptN_dav
 Revenir en haut de la page
Haut de la page 
Inscrivez-vous !
- Posez vos questions

- Résolvez vos problèmes

- Aidez les autres

- Participez et créez vos discussions

- Dialoguez en privé avec d'autres membres

- Suivez vos sujets préférés

- Affichez les signatures des membres

TOUT EST GRATUIT !

Je crée mon compte



Vous avez besoin d'aide ?
Des centaines d'experts sont à votre disposition sur les forums PC Astuces pour vous aider gratuitement, 24h/24, 7j/7.

Les derniers sujets résolus !
 

 > Tous les forumsAutres langages

 
Forum PC Astuces© 1997-2008 WebastucesAller en haut de la page