Ir ao conteúdo
  • Cadastre-se

C Jogo real ur ( tabuleiro ) movimentação


Nolisten

Posts recomendados

boa tarde a todos ,estou desenvolvendo um jogo  de tabuleiro  em linguagem c , este e meu primeiro período em engenharia da computação ,ainda tenho muitas duvidas segue os anexos sobre o tabuleiro , bom sei que aqui vocês não irão fazer o jogo para mim estou aqui para tirar uma duvida sobre a movimentação das peças não faço ideia de como começar aqui esta parte do programa que fiz , o PDF de como tem que ser o jogo e um arquivo executável de como é o jogo (professor que fez).espero que possam me ajudar .

#include<stdio.h>
#include<stdlib.h>//funcao rand
#include<conio.h>
#include<time.h>//necessario para funcao time
#define li 3
#define co 8
#define pe 7
void sorteio(char t[li][co],char s1[pe],char s2[pe],int aux,int sorte,int jogador)
{
    srand(time(NULL));
    sorte=rand()%2+1;
    printf("jogador %d inicia\n\n",sorte);
}

void tabuleiro(char t[li][co],char s1[pe],char s2[pe],int aux,int sorte,int jogador) //inicializa tabuleiro e exibe ele
{
    int i=0, j=0,l[li],c[co];
    printf("* = roseta\nc = comeco\nf = fim\n\n");
    printf("TABULEIRO: \n");
    for(i=0; i<li; i++)
    {
        for(j=0; j<co; j++)
        {
            t[i][j] =' ';

        }
    }
    for (int i=0; i<7; i++)
    {
        s1[i]='X'; //gera peças
        s2[i]='O';
    }

    for(i=0; i<8; i++) // espaçamento para mostrar cordenadas do tabuleiro em linha e coluna
    {
        printf("%3d",i);
    }
    printf("\n");
    t[0][0]='*'; //atribui começo ,fim , roseta
    t[0][0]='*';
    t[2][0]='*';
    t[1][3]='*';
    t[0][4]='c';
    t[2][4]='c';
    t[0][5]='f';
    t[2][5]='f';
    t[0][6]='*';
    t[2][6]='*';

    for(i=0; i<3; i++)
    {
        printf("%d",i);
        for(j=0; j<8; j++) //printa  matriz
        {
            printf("[%.2c]",t[i][j]); //tabuleiro
        }
        printf("\n");
    }
    printf("\n\n");
    for (int i=0; i<7; i++)
    {
        printf("[%c]",s1[i]); //printa vetor dos jogadores = s1
    }

    printf(" SAIDA JOGADOR 1\n");
    for (int i=0; i<7; i++)
    {
        printf("[%c]",s2[i]);  //printa vetor dos jogadores = s2
    }
    printf(" SAIDA JOGADOR 2\n");
    printf("\n");
}
/*void saida(char t[li][co],char s1[pe],char s2[pe],int aux,int sorte) //faz a saida
{
    if(sorte==1)
    {
        for(int i=0;i<aux;i++
      t[][]=s1[];

    }else if(sorte==2)
    {
         t[][]=s2[];
    }
}

*/
//void jogada(char t[li][co],char s1[pe],char s2[pe],int aux,int sorte)



void dado(char t[li][co],char s1[pe],char s2[pe],int aux,int sorte,int jogador) //inicializa a funcao dado
{
    //rand(time(NULL));
    int dado1,dado2,dado3;
    dado1=rand()%4+1;
    dado2=rand()%4+1;
    dado3=rand()%4+1;

    aux=dado1+dado2+dado3;
    //printf("Valores do dado:\n0 = 4 casas \n1 = 1 casas\n2 = 2 casas\n3 = 3 casas\n");
    printf("dado1=%d\ndado2=%d\ndado3=%d\nsoma=%d\n\n",dado1,dado2,dado3,aux);
}

int main(int argc,char *argv)
{
    int escolha,vitoria,aux1,sorte,player;
    char ta[li][co],p1[pe],p2[pe];


    printf("\t__________________________________________________________\n");
    printf("\t__________________                    ____________________\n");
    printf("\t__________________   ##############   ____________________\n");
    printf("\t__________________    JOGO REAL UR    ____________________\n");
    printf("\t__________________   ##############   ____________________\n");
    printf("\t__________________________________________________________\n");

    printf("\n");

    //do
    // {

    tabuleiro(ta,p1,p2,aux1,sorte,player);
    sorteio(ta,p1,p2,aux1,sorte,player);
    dado(ta,p1,p2,aux1,sorte,player);
    // saida(ta,p1,p2,aux1);
    printf("MENU\n1-SAIDA\n2-TABULEIRO\n");
    // switch (escolha)
    //  {
    // case 1:

    //dado();
    //  }



    // } while(vitoria=1);



    return 0;
}

 

Jogo_Real_UR.pdf

realur(professor).zip realur(professor).zip

  • Amei 1
Link para o comentário
Compartilhar em outros sites

#include<stdio.h>
#include<stdlib.h>//funcao rand
#include<conio.h>
#include<time.h>//necessario para funcao time
#define li 3
#define co 8
#define pe 7

char t[3][8] =
{
    {'*', ' ', ' ', ' ', 'c', 'f', '*', ' '},
    {' ', ' ', ' ', '*', ' ', ' ', ' ', ' '},
    {'*', ' ', ' ', ' ', 'c', 'f', '*', ' '},
};
char s1[7]= {'O', 'O', 'O', 'O', 'O', 'O', 'O'};//SAIDA
char s2[7]= {'X', 'X', 'X', 'X', 'X', 'X', 'X'};
char c1[7]= {' ',' ',' ',' ',' ',' ',' ',} ; //DESTINO
char c2[7]= {' ',' ',' ',' ',' ',' ',' ',};

int aux,aux2; //auziliar de dados soma
int jogador;
int linhaOrigem, colunaOrigem, linhaDestino, colunaDestino;
int vencedor=0;

void tabuleiro();
void saida();
void dado();
void sorteioinicial();
void atualizarJogo();
void jogada();

void tabuleiro() //inicializa tabuleiro e exibe ele
{
    int i=0, j=0,l[li],c[co];

    for(i=0; i<8; i++) // espaçamento para mostrar cordenadas do tabuleiro em linha e coluna
    {
        printf("%3d",i);
    }
    printf("\n");

    for(i=0; i<3; i++)
    {
        printf("%d",i);
        for(j=0; j<8; j++) //printa  matriz
        {
            printf("[%.2c]",t[i][j]); //tabuleiro
        }
        printf("\n");
    }
    printf("\n\n");
    for (int i=0; i<7; i++)
    {
        printf("[%c]",s1[i]); //printa veto do jogador = s1
    }

    printf(" SAIDA JOGADOR 1\n");
    for (int i=0; i<7; i++)
    {
        printf("[%c]",s2[i]);  //printa veto do jogador = s2
    }
    printf(" SAIDA JOGADOR 2\n");
    printf("\n");

    for (int i=0; i<7; i++)
    {
        printf("[%c]",c1[i]); //printa vetor destino do jogador = s1
    }

    printf(" DESTINO JOGADOR 1\n");
    for (int i=0; i<7; i++)
    {
        printf("[%c]",c2[i]);  //printa vetor destino do jogado = s1
    }
    printf(" DESTINO JOGADOR 2\n");
    printf("\n");
}
void saida()//faz a saida
{
    int i=0,j=0;
    if(jogador==1)
    {
        t[0][3]=s1[i];
        s1[i]=' ';
        i++;
    }
    else if(jogador==2)
    {
        t[2][3]=s2[j];
        s2[j]=' ';
        j++;
    }
    tabuleiro();
}
void atualizarJogo()
{
    int i=0,j=0;
    for(i=0; i<3; i++)
    {
        printf("%d",i);
        for(j=0; j<8; j++) //printa  matriz
        {
            printf("[%.2c]",t[i][j]); //tabuleiro
        }
        printf("\n");
    }
    printf("\n\n");
    for (int i=0; i<7; i++)
    {
        printf("[%c]",s1[i]); //printa veto do jogador = s1
    }

    printf(" SAIDA JOGADOR 1\n");
    for (int i=0; i<7; i++)
    {
        printf("[%c]",s2[i]);  //printa veto do jogador = s2
    }
    printf(" SAIDA JOGADOR 2\n");
    printf("\n");

    for (int i=0; i<7; i++)
    {
        printf("[%c]",c1[i]); //printa vetor destino do jogador = s1
    }

    printf(" DESTINO JOGADOR 1\n");
    for (int i=0; i<7; i++)
    {
        printf("[%c]",c2[i]);  //printa vetor destino do jogado = s1
    }
    printf(" DESTINO JOGADOR 2\n");
    printf("\n");
}
void dado() //inicializa a funcao dado
{
    int dado1,dado2,dado3;
    srand(time(NULL));
    dado1=rand()%4+1;
    dado2=rand()%4+1;
    dado3=rand()%4+1;
    aux=dado1+dado2+dado3;
    //printf("Valores do dado:\n0 = 4 casas \n1 = 1 casas\n2 = 2 casas\n3 = 3 casas\n");
    printf("dado1=%d\ndado2=%d\ndado3=%d\nsoma=%d\n\n",dado1,dado2,dado3,aux);
}
void sorteioinicial()
{

    int dado1,dado2,dado3,dado4,dado5,dado6;
    srand(time(NULL));
    dado1=rand()%4+1;
    dado2=rand()%4+1;
    dado3=rand()%4+1;
    dado4=rand()%4+1;
    dado5=rand()%4+1;
    dado6=rand()%4+1;
    aux=dado1+dado2+dado3;
    aux2=dado4+dado5+dado6;
    //printf("Valores do dado:\n0 = 4 casas \n1 = 1 casas\n2 = 2 casas\n3 = 3 casas\n");
    printf("dado1=%d\ndado2=%d\ndado3=%d\nsoma=%d\n\ndado4=%d\ndado5=%d\ndado6=%d\nsoma=%d\n\n",dado1,dado2,dado3,aux,dado4,dado5,dado6,aux2);
}
void jogada()
{

    printf("jogador %d nescolha o linha de origem:\n ",jogador);
    scanf("%d",&linhaOrigem);
    printf("jogador %d nescolha o coluna de origem:\n ",jogador);
    scanf("%d",&colunaOrigem);
    printf("jogador %d nescolha o linha de destino:\n ",jogador);
    scanf("%d",&linhaDestino);
    printf("jogador %d nescolha o coluna de destino:\n ",jogador);
    scanf("%d",&colunaDestino);

    if(jogador==1)
    {
        t[linhaOrigem][colunaOrigem]=' ';
        t[linhaDestino][colunaDestino]='O';
        if(t[linhaDestino][colunaDestino]=='*')
        {
            jogador=1;
        }
       else
       {
           jogador=2;
       }
    }
    else if(jogador==2)
    {
        t[linhaOrigem][colunaOrigem]=' ';
         t[linhaDestino][colunaDestino]='X';
        if(t[linhaDestino][colunaDestino]=='*')
        {
            jogador=2;
        }
       else
       {
           jogador=1;
       }
    }

}

int main(int argc,char *argv)
{
    int escolha,j=0;
    printf("\t__________________________________________________________\n");
    printf("\t__________________                    ____________________\n");
    printf("\t__________________   ##############   ____________________\n");
    printf("\t__________________    JOGO REAL UR    ____________________\n");
    printf("\t__________________   ##############   ____________________\n");
    printf("\t__________________________________________________________\n");
    printf("\n");

    tabuleiro();
    while (vencedor == 0)
    {
        printf("1-dado\n2-saida\n3-tabuleiro\n4-sorteio inicial\n5-encerrar jogo\n");
        scanf("%d",&escolha);
        printf("\n");

        switch (escolha)
        {
        case 1:
            dado();
            break;
        case 2:
            saida();
            break;
        case 3:
            jogada();
            atualizarJogo();

            break;
        case 4:
            srand(time(NULL));
            sorteioinicial();
            if(aux>aux2)
            {
                jogador=1;
                printf("\JOGADOR 1= 'O' START\n");
            }
            else if(aux2>aux)
            {
                jogador=2;
                printf("\nJOGADOR 2= 'X' START\n");
            }
            else if(aux2==aux)
            {
                srand(time(NULL));
                j=rand()%2+1;
                if(j==1)
                {
                    jogador=1;
                    printf("\JOGADOR 1= 'O' START\n");
                }
                else if(j==2)
                {
                    jogador=2;
                    printf("\nJOGADOR 2= 'X' START\n");
                }
            }
            break;
        default:
            vencedor=1;
        }
    }

    return 0;
}

 

  • Curtir 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário 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

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!