28/02/2006, 09:20
|
| | Fecha de Ingreso: junio-2005
Mensajes: 53
Antigüedad: 19 años, 7 meses Puntos: 0 | |
Como arreglar este programaa Hola, no se mucho de prog y tampoco se lo que le pasa a este programa a ver si alguien consigue arreglarlo para que funcione adecuadamente.saludos
Código:
/*REALIZAR JUEGO TRES EN RAYA: JUGADOR CONTRA JUGADOR*/
#include <conio.h>
#include <stdio.h>
#include <string.h>
#include <dos.h>
void tablero (int,int);
void jugador1(void);
void jugador2(void);
char matriz [3][3];
int comprueba(void);
void main(void)
{
printf("BIENVENIDO AL TRES EN RAYA\n");
printf("--------------------------\n");
printf("Las posiciones empiezan en '0' y acaban en '2'\n\n");
do
{
jugador1();
jugador2();
}
while(comprueba!=0);
getch();
}
void jugador1(void)
{
int i,j;
printf("\n\nJugador 1, introduce una posicion\n\n");
printf("\n\n FILA : ");
scanf("%d",&i);
printf("\nCOLUMNA : ");
scanf("%d",&j);
if(i>3 || j>3)
{
printf("\n\nLo siento,esa coordenada no existe");
}
else
{
matriz[i][j]='X';
tablero(i,j);
}
comprueba();
getch();
}
void jugador2(void)
{
int i,j;
printf("\n\nJugador 2, introduce una posicion\n\n");
printf("\n\n FILA : ");
scanf("%d",&i);
printf("\nCOLUMNA : ");
scanf("%d",&j);
if(i>3 || j>3)
{
printf("\n\nLo siento,esa coordenada no existe");
}
else
{
matriz[i][j]='O';
tablero(i,j);
}
getch();
comprueba();
return;
}
int comprueba (void)
{
//gana jugador 1
if(matriz[0][0]== matriz[0][1] && matriz[0][1]==matriz[0][2]&& matriz[0][0]=='X')
{
printf("Jugador 1, has ganado la partida!!");
if(matriz[0][0]== matriz[0][1] && matriz[0][1]==matriz[0][2]&& matriz[0][0]=='O')
printf("Jugador 2, has ganado la partida!!");
}
if(matriz[0][0]== matriz[1][0] && matriz[1][0]==matriz[2][0]&& matriz[0][0]=='X')
{
printf("Jugador 1, has ganado la partida!!");
}
if(matriz[0][1]== matriz[1][1] && matriz[2][1]==matriz[2][1]&& matriz[0][1]=='O')
{
printf("Jugador 1, has ganado la partida!!");
}
if(matriz[0][2]== matriz[1][2] && matriz[2][2]==matriz[2][2]&& matriz[0][2]=='O')
{
printf("Jugador 1, has ganado la partida!!");
}
if(matriz[0][2]== matriz[1][1] && matriz[2][0]==matriz[2][0]&& matriz[0][2]=='O')
{
printf("Jugador 1, has ganado la partida!!");
}
return(1);
}
void tablero (int i,int j)
{
clrscr();
printf("\n\n 0 | 1 | 2 \n");
printf("-------------------\n");
printf(" 0 %c | %c | %c\n",matriz[0][0],matriz[0][1],matriz[0][2]);
printf("-------------------\n");
printf(" 1 %c | %c | %c\n",matriz[1][0],matriz[1][1],matriz[1][2]);
printf("-------------------\n");
printf(" 2 %c | %c | %c\n",matriz[2][0],matriz[2][1],matriz[2][2]);
return;
}
|