All pastes #404905 Raw Edit

Mine

public c v1 · immutable
·published 2007-03-21 10:35 UTC
rendered paste body
#include <stdio.h>#include <stdlib.h>char matrix[6][7]; /* board size is [6][7] */void init_matrix(void);void disp_matrix(void);void get_x_move(void);void get_o_move(void);char check(void);int main(){        char done;    /*sets Done to ' ' and interlize the matrix so everything in matrix to ' '*/    init_matrix();    done = ' ';    do {      disp_matrix();      get_x_move();      done = check();      if(done != ' ') break;      disp_matrix();      get_o_move();      done = check();    } while(done == ' ');    printf("done is %c\n", done);    disp_matrix();    system("PAUSE");}/* Sub rutines section under here *//* Initialize the matrix. */void init_matrix(void){  int i;  int j;  for(i=0; i<6;i++)    for(j=0; j<7; j++) matrix[i][j] =  ' ';}/* Display the matrix on the screen. */void disp_matrix(void){  int t;  printf("  1   2   3   4   5   6   7\n|---|---|---|---|---|---|---|\n");    for(t=0; t<6; t++) {    printf("| %c | %c | %c | %c | %c | %c | %c |",matrix[t][0],            matrix[t][1], matrix [t][2], matrix [t][3],            matrix[t][4], matrix [t][5], matrix [t][6]);    if(t!=6)printf("\n|---|---|---|---|---|---|---|\n");  }  printf("\n");}/* get X move*/void get_x_move(void){  /*makes 2 temporarily variables*/  int y;  int x;     printf("X turn\n");  printf("Enter your move:\n ");  scanf("%d", &x);  x--;  y = 0;  printf("debug ID X = %d Y = %d\n", x, y ); /*!DEBUG!*/  if (matrix[y][x] != ' '){    printf("Invalid move, try again.\n");    get_x_move();  }  for(y=5; y>=0; y--) {    if(matrix[y][x] == ' '){       matrix[y][x] = 'x';       break;      }  }}/* get O move*/void get_o_move(void){  /*makes 2 temporarily variables*/  int y;  int x;     printf("O turn\n");  printf("Enter your move:\n ");  scanf("%d", &x);  x--;  y = 0;  printf("debug ID X = %d Y = %d\n", x, y ); /*!DEBUG!*/  if (matrix[y][x] != ' '){    printf("Invalid move, try again.\n");    get_o_move();  }  for(y=5; y>=0; y--) {    if(matrix[y][x] == ' '){       matrix[y][x] = 'O';       break;      }  }}/* Check for winners */char check(void){     int i;     int j;          for(i=0; i<6; i++) {        for(j=0; j<4; j++) {          if(matrix[i][j] != ' ' &&             matrix[i][j] == matrix[i][j+1] &&             matrix[i][j] == matrix[i][j+2] &&             matrix[i][j] == matrix[i][j+3]) return matrix[i][j];          }     }          for(i=0; i<7; i++) {        for(j=0; j<3; j++) {          if(matrix[j][i] != ' ' &&            matrix[j][i] == matrix[j+1][i] &&            matrix[j][i] == matrix[j+2][i] &&            matrix[j][i] == matrix[j+3][i]) return matrix[j][i];        }     }          for(i=0; i<4; i++) {        for(j=0; j<3; j++) {           if(matrix[j][i] != ' ' &&            matrix[j][i] == matrix[j+1][i+1] &&            matrix[j][i] == matrix[j+2][i+2] &&            matrix[j][i] == matrix[j+3][i+3]) return matrix[j][i];        }     }     /*PROBLEM START*/     for(i=3; i<7; i++) {        for(j=0; j<3; j++) {          if(matrix[j][i] != ' ' &&            matrix[j][i] == matrix[j-1][i-1] &&            matrix[j][i] == matrix[j-2][i-2] &&            matrix[j][i] == matrix[j-3][i-3]) return matrix[j][i];        }     }     /*PROBLEM END*/     return ' ';}