Jump to content
costricardo

Jogo em linguagem c ajuda

Recommended Posts

costricardo

Boas pessoal, :P

Estou com um grande problema, estudo no ensino universitario e o meu projecto de programaçao é fazer o jogo chamado fanorona, só que eu nao percebo nada. Tenho que o entregar em janeiro. AInda não tenho anda feito :bye2:

O seguinte link tem o tabuleiro desenhado e o que é o jogo http://pt.wikipedia.org/wiki/Fanorona

ajudem-me porfavor


I´m a Geek and you?www.tecnologias.in

Share this post


Link to post
Share on other sites
costricardo

em tudo, nao consigo mesmo faze-lo e tenho de apresentá-lo em janeiro la para dia 10  :wallbash:


I´m a Geek and you?www.tecnologias.in

Share this post


Link to post
Share on other sites
Localhost

Bem primeiro, tens de fazer o tabuleiro que pode ser com uma matriz por exemplo, depois é só pedires ao usuário para pôr as coordenadas, depois se for contra o computador o que fazes é percorrer a matriz e escolher uma posição vazia para jogar ou escolheres uma posição randomica vazia. Finalmente, é só verificares, todas as vezes que o pc ou o usuário jogar se existem vencedores, aí já tens de fazer umas quantas verificações e ver as regras do jogo...


here since 2009

Share this post


Link to post
Share on other sites
costricardo

mas eu tou mesmo mal em programação, nao pesco nada =/ podia dar um ajuda B)


I´m a Geek and you?www.tecnologias.in

Share this post


Link to post
Share on other sites
Localhost

Ok, posso-te ajudar mas não penses que te vou fazer o trabalho.

Sabes o que é uma matriz?


here since 2009

Share this post


Link to post
Share on other sites
costricardo

sim , e sei guardar dados em arreys e imprimi los , pouco mais


I´m a Geek and you?www.tecnologias.in

Share this post


Link to post
Share on other sites
Localhost

Pronto, sabes percorrer uma matriz do género:

int l,c;
int matriz[3][3];
for(l=0; l<3; l++){
  for(c=0; c<3; c++){
     matriz[l][c] = l * c;
   }
}


here since 2009

Share this post


Link to post
Share on other sites
Localhost

Pois, então é o seguinte, tu para percorreres um vector metes um while loop correcto? Do género:

int teste[10];
int x;
for(x=0; x<10; x++){
  //instrução aqui
}

Para percorreres uma matriz é a mesma coisa só que com dois loops porque vais entrar no primeiro loop n vezes (que é o número de linhas que a matriz tem) e no segundo loop vais fazê-lo y vezes (que é o número de colunas), tu só vais entrar nas linhas outra vez quando as colunas que estiverem nessa linha tenham sido totalmente percorridas. Supondo que tens uma matriz de 3 x 3.

int linha, coluna;
int matriz[3][3];
for(linha=0; linha<3; linha++){ // ele entra com zero aqui e só volta quando o segundo for estiver em três, quando este tiver três terminam os loops
  for(coluna=0;coluna<3;coluna++){
    /*instrução aqui */
}
}

Quanto ao teu jogo o que tens de começar a fazer é a ver quantas linhas e colunas tem o tabuleiro. Depois crias uma matriz(segue os meus exemplos) da quatidade de linhas e colunas, não te esqueças que primeiro vêm as linhas!

Depois crias uma outra função que pede ao jogador para jogar do género:

int l;
int c;
printf("Qual a linha que quer jogar: ");
scanf("%d", &l);
printf("E a coluna: ");
scanf("%d", &c);

Depois disto é simples, gravas na matriz a posição:

matriz[l][c] = 'x' //Aqui o sinal x pûs só como exemplo, tinhas de ver qual é o simbolo utilizado no jogo

Depois vem o mais trabalhoso que são as checagens, para ver quem ganhou, aqui eu não te posso ajudar porque nem sequer conheço o jogo, tens de conhecer as regras e utilizar if's a torto e a direito para as verificações, não utilizes assim tantos, tente reduzir o máximo possivel.

Bem isto já foi grande demais, espero ter servido para alguma coisa....


here since 2009

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.