Estou a fazer um jogo da velha, e ainda sou iniciante em c, quando eu dou coordenadas o X e a O são marcados em todo o tabuleiro e não na posição pedida. Ignorem as minhas condições do while, eu depois ajusto isso...
#include<stdio.h>
#include<string.h>
int main(){
int DIM=3; //dimensão do tabuleiro
int num_aleatorio,l=1, x=0;
char nome1[15], nome2[15];
char tabuleiro[DIM][DIM];
char simbolos[2], nome[2][15];
int s, n; //indice do array "simbolos" e indice do array "nomes"
int j,i; //indice das coordenadas
for(n=0;n<2;n++){ //variação do indice do array "nome"
printf("Indique o nome do jogador: ");
scanf("%s", &nome[n]);
}
n=0;
for(i=0;i<DIM;i++){ //criação do tabuleiro 3*3
for(j=0;j<DIM;j++){
tabuleiro[j]=' ';
}
}
srand(time(NULL)); //gerador de um numero aleatorio
for(num_aleatorio=0;num_aleatorio<2; num_aleatorio++){
num_aleatorio=rand()%2+1;
if(num_aleatorio==1){
simbolos[0]='X';
simbolos[1]='O';
}
else{
simbolos[0]='O';
simbolos[1]='X';
}
do{
printf("\n Indica as coordenadas entre 0 e 2 %s: ", nome[n]);
scanf("%i %i", &i, &j);
tabuleiro[j]=simbolos;
if(n==0){
n=1;
}
else{
n=0;
}
do{
for (i=0;i<DIM;i++){
for(j=0; j<DIM; j++){
printf(" %c |", simbolos,tabuleiro[j]);
}
printf("\n");
}
if(s==0){
s=1;
}
else{
s=0;
}
l++;
}while(l<=1);
}while(x<=10);
printf("\n");
}
}
Pergunta
Maria Almeida
Estou a fazer um jogo da velha, e ainda sou iniciante em c, quando eu dou coordenadas o X e a O são marcados em todo o tabuleiro e não na posição pedida. Ignorem as minhas condições do while, eu depois ajusto isso...
#include<stdio.h>
#include<string.h>
int main(){
int DIM=3; //dimensão do tabuleiro
int num_aleatorio,l=1, x=0;
char nome1[15], nome2[15];
char tabuleiro[DIM][DIM];
char simbolos[2], nome[2][15];
int s, n; //indice do array "simbolos" e indice do array "nomes"
int j,i; //indice das coordenadas
for(n=0;n<2;n++){ //variação do indice do array "nome"
printf("Indique o nome do jogador: ");
scanf("%s", &nome[n]);
}
n=0;
for(i=0;i<DIM;i++){ //criação do tabuleiro 3*3
for(j=0;j<DIM;j++){
tabuleiro[j]=' ';
}
}
srand(time(NULL)); //gerador de um numero aleatorio
for(num_aleatorio=0;num_aleatorio<2; num_aleatorio++){
num_aleatorio=rand()%2+1;
if(num_aleatorio==1){
simbolos[0]='X';
simbolos[1]='O';
}
else{
simbolos[0]='O';
simbolos[1]='X';
}
do{
printf("\n Indica as coordenadas entre 0 e 2 %s: ", nome[n]);
scanf("%i %i", &i, &j);
tabuleiro[j]=simbolos;
if(n==0){
n=1;
}
else{
n=0;
}
do{
for (i=0;i<DIM;i++){
for(j=0; j<DIM; j++){
printf(" %c |", simbolos,tabuleiro[j]);
}
printf("\n");
}
if(s==0){
s=1;
}
else{
s=0;
}
l++;
}while(l<=1);
}while(x<=10);
printf("\n");
}
}
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.