Ir ao conteúdo
  • Cadastre-se
Entre para seguir isso  
Visitante

Exemplo em C: Jogo do 9

Recommended Posts

Visitante

Jogo do 9 (similar ao jogo do 15).
 
Meu primeiro joguinho em C, usando Dev C/C++.
 
Se alguem quiser modificar (melhorar) o "joguinho", segue abaixo o código.

/* *  * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. *  * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. *  * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, * MA 02110-1301, USA. *  *  */#include <stdio.h>#include <stdlib.h>#include <conio2.h>#include <conio.c>#include <time.h>//declarar funcaoint random(int n);int jogar(int tab[][3]);int vcjoga(int tab[][3]);int vencer(int tab[][3]);void godpass(int tab[][3]);void mostrar(int tab[][3]);void clear();int main(int args, char *arg[]){    int tab[3][3];    int num[9],i,j,cont;    //ativar funcao numeros aleatorios    srand((unsigned)time(NULL));        //gerar numeros aleatorios em num[], sem repeticao    for (i=0; i<9; i++)    {        cont = 0;        while (cont == 0)        {              cont = 1;              num[i] = random(9)+1;              for (j=0; j<9; j++)              {                  if (num[j] == num[i] && i!= j)                  {                             num[i] = random(9)+1;                             cont = 0;                  }              }         }      }          //adicionar numeros aleatorios em tab[][]    tab[0][0] = num[0];    tab[1][0] = num[1];    tab[2][0] = num[2];    tab[0][1] = num[3];    tab[1][1] = num[4];    tab[2][1] = num[5];    tab[0][2] = num[6];    tab[1][2] = num[7];    tab[2][2] = num[8];        jogar(tab);            return 0;}//funcao numeros aleatorios int random(int n){    return rand() % n;}//funcao jogar allint jogar(int tab[][3]){        while(1)    {              clear();              mostrar(tab);              vcjoga(tab);              vencer(tab);    }            return 0;}int vcjoga(int tab[][3]){    int n;        textcolor(WHITE);    printf("\n\nDigite o numero: ");    textcolor(RED);    printf("                                               (0)SAIR.\n");    textcolor(WHITE);    printf("\n> ");    scanf("%d", &n);        if (n == 0)    {          exit(1);    }        //godpass    if (n == 741852963)    {          godpass(tab);    }        if (tab[2][2] == 9)    {          if (tab[2][1] == n)          {                      tab[2][1] = 9;                      tab[2][2] = n;                      return;                                }            }        if (tab[2][2] == 9)    {          if (tab[1][2] == n)          {                      tab[1][2] = 9;                      tab[2][2] = n;                      return;                                }            }        if (tab[2][1] == 9)    {          if (tab[2][2] == n)          {                      tab[2][2] = 9;                      tab[2][1] = n;                      return;                                }            }        if (tab[2][1] == 9)    {          if (tab[2][0] == n)          {                      tab[2][0] = 9;                      tab[2][1] = n;                      return;                                }            }        if (tab[2][1] == 9)    {          if (tab[1][1] == n)          {                      tab[1][1] = 9;                      tab[2][1] = n;                      return;                                }            }        if (tab[2][0] == 9)    {          if (tab[2][1] == n)          {                      tab[2][1] = 9;                      tab[2][0] = n;                      return;                                }            }        if (tab[2][0] == 9)    {          if (tab[1][0] == n)          {                      tab[1][0] = 9;                      tab[2][0] = n;                      return;                                }            }        if (tab[1][0] == 9)    {          if (tab[2][0] == n)          {                      tab[2][0] = 9;                      tab[1][0] = n;                      return;                                }            }        if (tab[1][0] == 9)    {          if (tab[0][0] == n)          {                      tab[0][0] = 9;                      tab[1][0] = n;                      return;                                }            }        if (tab[1][0] == 9)    {          if (tab[1][1] == n)          {                      tab[1][1] = 9;                      tab[1][0] = n;                      return;                                }            }        if (tab[0][0] == 9)    {          if (tab[1][0] == n)          {                      tab[1][0] = 9;                      tab[0][0] = n;                      return;                                }            }        if (tab[0][0] == 9)    {          if (tab[0][1] == n)          {                      tab[0][1] = 9;                      tab[0][0] = n;                      return;                                }            }        if (tab[0][1] == 9)    {          if (tab[0][0] == n)          {                      tab[0][0] = 9;                      tab[0][1] = n;                      return;                                }            }        if (tab[0][1] == 9)    {          if (tab[0][2] == n)          {                      tab[0][2] = 9;                      tab[0][1] = n;                      return;                                }            }        if (tab[0][1] == 9)    {          if (tab[1][1] == n)          {                      tab[1][1] = 9;                      tab[0][1] = n;                      return;                                }            }        if (tab[0][2] == 9)    {          if (tab[0][1] == n)          {                      tab[0][1] = 9;                      tab[0][2] = n;                      return;                                }            }        if (tab[0][2] == 9)    {          if (tab[1][2] == n)          {                      tab[1][2] = 9;                      tab[0][2] = n;                      return;                                }            }        if (tab[1][2] == 9)    {          if (tab[0][2] == n)          {                      tab[0][2] = 9;                      tab[1][2] = n;                      return;                                }            }        if (tab[1][2] == 9)    {          if (tab[2][2] == n)          {                      tab[2][2] = 9;                      tab[1][2] = n;                      return;                                }            }        if (tab[1][2] == 9)    {          if (tab[1][1] == n)          {                      tab[1][1] = 9;                      tab[1][2] = n;                      return;                                }            }        //meio        if (tab[1][1] == 9)    {          if (tab[1][0] == n)          {                      tab[1][0] = 9;                      tab[1][1] = n;                      return;                                }            }        if (tab[1][1] == 9)    {          if (tab[0][1] == n)          {                      tab[0][1] = 9;                      tab[1][1] = n;                      return;                                }            }        if (tab[1][1] == 9)    {          if (tab[0][1] == n)          {                      tab[0][1] = 9;                      tab[1][1] = n;                      return;                                }            }        if (tab[1][1] == 9)    {          if (tab[1][2] == n)          {                      tab[1][2] = 9;                      tab[1][1] = n;                      return;                                }            }        if (tab[1][1] == 9)    {          if (tab[2][1] == n)          {                      tab[2][1] = 9;                      tab[1][1] = n;                      return;                                }            }        }int vencer(int tab[][3]){        if ( tab[0][0] == 1 && tab[1][0] == 4 && tab[2][0] == 7 && tab[0][1] == 2 && tab[1][1] == 5         && tab[2][1] == 8 && tab[0][2] == 3 &&tab[1][2] == 6 && tab[2][2] == 9)         {                      clear();                      mostrar(tab);                      clear();                      textcolor(RED);                                            //fim de jogo GG - Good Game!                      printf("                |------------------\\    |-----------------\\ \n");                      printf("                |                   \\   |                  \\  \n");                      printf("                |                    \\  |                   \\  \n");                      printf("                |                    |  |                    |  \n");                      printf("                |             |      |  |             |      |  \n");                      printf("                |            -------    |             -------  \n");                      printf("                |         -----------|  |         -----------|  \n");                      printf("                |         |          |  |         |          |  \n");                      printf("                |                    |  |                    |  \n");                      printf("                |--------------------|  |--------------------| \n");                                            getche();                      exit(1);         }    else    {        return 0;    }    }//godpassvoid godpass(int tab[][3]){    tab[0][0] = 1;    tab[1][0] = 4;    tab[2][0] = 7;    tab[0][1] = 2;    tab[1][1] = 5;    tab[2][1] = 8;    tab[0][2] = 3;    tab[1][2] = 6;    tab[2][2] = 9;    }//mostrar jogovoid mostrar(int tab[][3]){     int i,j;          textcolor(WHITE);     printf("        ********* JOGO DOS 9 *********\n");     printf("     *********      v0.0.1       ********\n");     printf("\n\n");          for (i=0; i<3; i++)    {        for(j=0; j<3; j++)        {                 if (tab[i][j] == 1 || tab[i][j] == 2 || tab[i][j] == 3 ||                 tab[i][j] == 4 || tab[i][j] == 5 || tab[i][j] == 6 ||                 tab[i][j] == 7 || tab[i][j] == 8)                 {                           textcolor(WHITE);                           printf("           %d", tab[i][j]);                 }                                  if (tab[i][j] == 9)                 {                               textcolor(RED);                               printf("           -");                 }                          }        printf("\n");    } }//limpar telavoid clear(){     system("CLS");}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora
Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×