ajuda como jogo da velha em c++

1. ajuda como jogo da velha em c++

hack.eng
hack.eng

(usa Outra)

Enviado em 29/11/2008 - 01:55h

oi galera sou novo aki no forum, meu professor passou um jogo da velha para nos incrementar-mos
soh q estou com problemas nele, vo mandar aki o q eu tentei fazer
logo mais abaixo mando o original

o q temq ser feito:
jogo da velha em matriz; humano x humano; com todas as funções do jogo e como opação de saida ou retornar ao jogo no final


ESSE EH O Q EU TENTEI FAZER, IREI RESPONDER LOGO A BAIXO COM O Q O PROF MANDOU PARA NOS

#include <conio.h>
#include <conio.c>
#include <stdio.h>
#include <dos.h>
#include<stdlib.h>

char matriz[3][3];

char check(void)
{
int i;

for(i=0; i<3; i++) //verifica as linhas
if(matrix[i][0]==matrix[i][1] &&
matrix[i][0]==matrix[i][2]) return matrix[i][0];

for(i=0; i<3; i++) //verifica as colunas
if(matrix[0][i]==matrix[1][i] &&
matrix[0][i]==matrix[2][i]) return matrix[0][i];

for(i=0; i<3; i++) // verifica a diagonal
if(matrix[0][0]==matrix[1][1] &&
matrix[1][1]==matrix[2][2]) return matrix[0][0];

for(i=0; 1<3; i++)// verifica a diagonal
if(matrix[0][2]==matrix[1][1] &&
matrix[1][1]==matrix[2][0]) return matrix[0][2];

for(i=0; i<3; i++) // verifica se ha empate
if(matrix[0][0]!=' ' && matrix[0][1] !=' ' &&
matrix[0][2]!=' ' && matrix[1][0] !=' ' &&
matrix[1][1]!=' ' && matrix[1][2] !=' ' &&
matrix[2][0]!=' ' && matrix[2][1] !=' ' &&
matrix[2][2]!=' ') return 'v';
return ' ';
}

void init_matrix(void) //inicializa a matriz
{
int i, j;
for(i=0; i<3; i++)
for(j=0; j<3; j++) matrix[i][j]=' ';
}

void jogador1(void)
{
int x,y;
printf("Jogador 1 digite a linha e coluna para o 'x': ");
scanf("%d%d", &x, &y);
x--; y--;

if(matrix[x][y] !=' ')
{
printf("Posicao invalida, tente novamente. \n");
jogador1();
}
else matrix[x][y]='x';
}



void disp_matrix(void) {

printf(0, 0, "Jogo da Velha\nFeche a janela para encerrar\n");
printf(0, 3, "JOGADOR 1"); // coluna, linha, texto
printf(0, 4, "Linha...: ");
printf(0, 5, "Coluna..: ");
printf(0, 7, "JOGADOR 2");
printf(0, 8, "Linha...: ");
printf(0, 9, "Coluna..: ");
printf(30, 10, " 1 2 3 ");
printf(30, 11, " | | ");
printf(30, 12, "1 %c | %c | %c "),matriz[1][1],matriz[1][2],matriz[1][3]);
printf(30, 13, " | | ");
printf(30, 14, " -----+-----+-----");
printf(30, 15, " | | ");
printf(30, 16, "2 %c | %c | %c "),matriz[2][1],matriz[2][2],matriz[2][3]);
printf(30, 17, " | | ");
printf(30, 18, " -----+-----+-----");
printf(30, 19, " | | ");
printf(30, 20, "3 %c | %c | %c "),matriz[3][1],matriz[3][2],matriz[3][3]);
escrevexy(30, 21, " | | ");

}

void jogador2(void)
{

disp_matrix();
int x,y;
printf("Jogador 2 digite a linha e coluna para a 'o': ");
scanf("%d%d", &x, &y);
x--; y--;

if(matrix[x][y] !=' ')
{
printf("Posicao invalida, tente novamente. \n");
jogador2();
}
else matrix[x][y]='o';
}


int main (void)
{
char done;



done=' ';
init_matrix();
do
{

printf("Este e o jogo-da-velha.\n");
printf("Divirta-se com seu amigo\n");
disp_matrix();
jogador1();
done=check(); //verifica se ha vencedor
system("cls");
printf("Este e o jogo-da-velha.\n");
printf("Divirta-se com seu amigo\n");
if(done!=' ')break; //vencedor
jogador2();
done = check(); // verifica se ha vencedor

system("cls");
}while(done==' ');

if(done=='x')
{printf("Jogador 1 venceu!\n");
getch();}
else if(done=='o')
{printf("Jogador 2 venceu\n");
getch();}
else
{printf("Velha!");
getch();}

getch();
main();
}



  


2. Re: ajuda como jogo da velha em c++

hack.eng
hack.eng

(usa Outra)

Enviado em 29/11/2008 - 01:57h

SEGUE AKI O Q O PROF MANDOU PARA NOS

#include <conio.h>
#include <conio.c>
#include <stdio.h>
#include <dos.h>

int matriz[3][3];

void escrevexy (int coluna, int linha, char *texto) {

gotoxy(coluna, linha);
printf(texto);

}
void jogador_1 () {

int linha, coluna;

gotoxy(10, 4);
scanf("%i", &linha);
gotoxy(10, 5);
scanf("%i", &coluna);
escrevexy(33, 12, "X"); // apenas para teste

}

void jogador_2 () {

int linha, coluna;

gotoxy(10, 8);
scanf("%i", &linha);
gotoxy(10, 9);
scanf("%i", &coluna);
escrevexy(33, 16, "O"); // apenas para teste

}

void escreveInformacoes() {

escrevexy(0, 0, "Jogo da Velha\nFeche a janela para encerrar\n");
escrevexy(0, 3, "JOGADOR 1"); // coluna, linha, texto
escrevexy(0, 4, "Linha...: ");
escrevexy(0, 5, "Coluna..: ");
escrevexy(0, 7, "JOGADOR 2");
escrevexy(0, 8, "Linha...: ");
escrevexy(0, 9, "Coluna..: ");
escrevexy(30, 10, " 1 2 3");
escrevexy(30, 11, " | |");
escrevexy(30, 12, "1 | |");
escrevexy(30, 13, " | |");
escrevexy(30, 14, " -----+-----+-----");
escrevexy(30, 15, " | |");
escrevexy(30, 16, "2 | |");
escrevexy(30, 17, " | |");
escrevexy(30, 18, " -----+-----+-----");
escrevexy(30, 19, " | |");
escrevexy(30, 20, "3 | |");
escrevexy(30, 21, " | |");

}



int main() {

int fim = 0;

textcolor(WHITE);
textbackground(BLUE);
system("cls");
escreveInformacoes();

do {
jogador_1 ();
jogador_2 ();
} while (fim == 0);
getch();

}


quem poder ajudar ficarei muito grato
e eh pra segunda agora :(






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts