0/5 (3 avis)
Snippet vu 9 371 fois - Téléchargée 36 fois
#include <stdio.h> int verifier_position(int plateau[3][3],int ligne,int colonne){ if ((ligne<3)&&(ligne>=0)){ if ((colonne<3)&&(colonne>=0)) if (plateau[ligne][colonne]==0) return(1); } return(0); } void placer_pion(int plateau[3][3], int joueur){ int posx,posy; int result=2; while(result!=1){ if(result==0) printf("\nmauvaise position...\n"); printf("Entrer la colonne :"); scanf("%d",&posx); printf("Entrer la ligne :"); scanf("%d",&posy); posy--;posx--; result=verifier_position(plateau,posx,posy); } plateau[posx][posy]=joueur; } void affiche_plateau(int plateau[3][3]){ int i=0; int j=0; while(j<3){ if(i<3){ switch(plateau[i][j]){ case 0: printf(" "); break; case 1: printf("0"); break; case 2: printf("X"); break; } i++; }else{ i=0; j++; printf("\n"); } } } void vider_plateau(int plateau[3][3]){ int i,j; for(j=0;j<3;j++) for(i=0;i<3;i++) plateau[i][j]=0; } int verifier_plateau(int plateau[3][3],int joueur){ int i,j=0; int nbcase=0; for(i=0;i<3;i++) if(plateau[i][j]==joueur) if((plateau[i][j+1]==plateau[i][j+2])&&(plateau[i][j+1]==joueur)) return(1); i=0;j=0; for(j=0;j<3;j++) if(plateau[i][j]==joueur) if((plateau[i+1][j]==plateau[i+2][j])&&(plateau[i+1][j]==joueur)) return(1); i=0;j=0; if(plateau[i][j]==joueur) if((plateau[i+1][j+1]==plateau[i+2][j+2])&&(plateau[i+1][j+1]==joueur)) return(1); i=2;j=0; if(plateau[i][j]==joueur) if((plateau[i-1][j+1]==plateau[i-2][j+2])&&(plateau[i-2][j+2]==joueur)) return(1); i=0;j=0; for(j=0;j<3;j++) for(i=0;i<3;i++) if (plateau[i][j]!=0) nbcase++; if(nbcase==9) return(2); return(0); } int main(void){ int joueur,resultat; int plateau[3][3]; int fin=0; vider_plateau(plateau); printf("Bienvenue dans Tic Tac Toe...\n\n"); joueur=1; while(fin!=1){ printf("c'est au joueur %d de jouer...\n",joueur); placer_pion(plateau,joueur); affiche_plateau(plateau); resultat=verifier_plateau(plateau,joueur); if(resultat==1){ fin=1; printf("\nLe joueur %d a gagner...\n",joueur); } if (resultat==2){ fin=1; printf("\nMatch nul...\n"); } joueur=joueur%2+1; } getchar(); return(0); }
29 déc. 2002 à 11:23
14 déc. 2002 à 20:37
14 déc. 2002 à 16:55
tu demandes la ligne et tu saisies posx or posx situe la colonne
Tu as juste à inverser les mots ligne et colonne pour la saisie et le tour est joué
Voili voilou
Bonne continuation
24KaraS
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.