Ir para conteúdo
Fórum Script Brasil

kelly salinas

Membros
  • Total de itens

    3
  • Registro em

  • Última visita

Sobre kelly salinas

Últimos Visitantes

O bloco dos últimos visitantes está desativado e não está sendo visualizado por outros usuários.

kelly salinas's Achievements

0

Reputação

  1. char xadrez [3] [3] = { //T = torre preta, C = cavalo preto, B = bispo preto {' ', ' ', ' '}, {' ', ' ', ' '}, {' ', ' ', ' '} }; int main() // a duvida seria com relacao a colocar o jogador x computador onde o primeiro tem vez { int vez = 0; int contareibranco = 0, contatorre1branco = 0, contatorre2branco = 0; int el_AdversarioL, el_AdversarioC; while(1) { pintarTelaTexto () int contareipreto = 0, contatorre1preto = 0, contatorre2preto = 0; if (vez == 0) vez = 1; else vez = 0; } return 0; } int contareibranco = 0, contatorre1branco = 0, contatorre2branco = 0; int contareipreto = 0, contatorre1preto = 0, contatorre2preto = 0; int pintarTelaTexto () { system("CLS"); int lin, col, r; for (lin=0; lin < 3; lin++) { for (r = 0; r < 3; r++) { for (col=0; col < 3; col++) { char peca = xadrez[lin] [col]; char letra = ( (lin+col) %2 == 0) ? '\xB2' : ' '; letra = ( r == 1 && peca != ' ') ? peca : letra; if ( (lin + col) %2==0){ printf("\xB2\xB2\%c\xB2\xB2", letra); } else { printf(" %c ", letra); } } printf("\n"); } printf("\n"); } } int moverpecas (int lo, int ld, int colo, int cold) { int mover = 0; char peca; int deslvert = abs (ld - lo); int deslhor = abs (cold - colo); if ( (lo >=0 && lo < 3 && colo >=0 && colo < 3) && (ld >=0 && ld < 6 && cold >=0 && cold < 6) ) { peca = xadrez[lo] [colo]; if ( (peca == 'T' || peca == 't') && (deslvert == 0 || deslhor == 0)) { mover = 1; } if ( (peca == 'B' || peca == 'b') && (deslvert == deslhor )) { mover = 1; } if ( (peca == 'C' || peca == 'c') && ((deslvert == 1 && deslhor == 2 ) || (deslvert == 2 && deslhor == 1))) { mover = 1; } if (mover){ xadrez[ld] [cold] = xadrez[lo] [colo]; xadrez[lo] [colo] = ' '; return 1; }else { return 10; } } else { return 0; } } int main () { int lo, ld, colo, cold; while (1){ pintarTelaTexto(); printf("Digita a linha e coluna da peca que quer mover:"); scanf("%d %d", &lo, &colo); printf("\nDigita a linha e coluna de destino na peca:"); scanf("%d %d", &ld, &cold); int resultado = moverpecas (lo, ld, colo, cold); if ( resultado != 1) { switch (resultado ) { case 10 : printf("\n ERRO: A peca não pode ser movida dessa forma"); getch (); break; case 0 : printf("\n ERRO: Coordenadas invalidas"); getch (); break; case 1 : break; } printf ("\n Essa jogada não pode ser feita"); } } // a minha duvida seria onde como fazer os laços de vitoria se do jogador ou computador // como usar a parte do minimax para criar o computador jogar; getch(); return 0; }
  2. char xadrez [3] [3] = { //T = torre preta, C = cavalo preto, B = bispo preto {' ', ' ', ' '}, {' ', ' ', ' '}, {' ', ' ', ' '} }; int main() // a duvida seria com relacao a colocar o jogador x computador onde o primeiro tem vez { int vez = 0; int contareibranco = 0, contatorre1branco = 0, contatorre2branco = 0; int el_AdversarioL, el_AdversarioC; while(1) { pintarTelaTexto () int contareipreto = 0, contatorre1preto = 0, contatorre2preto = 0; if (vez == 0) vez = 1; else vez = 0; } return 0; } int contareibranco = 0, contatorre1branco = 0, contatorre2branco = 0; int contareipreto = 0, contatorre1preto = 0, contatorre2preto = 0; int pintarTelaTexto () { system("CLS"); int lin, col, r; for (lin=0; lin < 3; lin++) { for (r = 0; r < 3; r++) { for (col=0; col < 3; col++) { char peca = xadrez[lin] [col]; char letra = ( (lin+col) %2 == 0) ? '\xB2' : ' '; letra = ( r == 1 && peca != ' ') ? peca : letra; if ( (lin + col) %2==0){ printf("\xB2\xB2\%c\xB2\xB2", letra); } else { printf(" %c ", letra); } } printf("\n"); } printf("\n"); } } int moverpecas (int lo, int ld, int colo, int cold) { int mover = 0; char peca; int deslvert = abs (ld - lo); int deslhor = abs (cold - colo); if ( (lo >=0 && lo < 3 && colo >=0 && colo < 3) && (ld >=0 && ld < 6 && cold >=0 && cold < 6) ) { peca = xadrez[lo] [colo]; if ( (peca == 'T' || peca == 't') && (deslvert == 0 || deslhor == 0)) { mover = 1; } if ( (peca == 'B' || peca == 'b') && (deslvert == deslhor )) { mover = 1; } if ( (peca == 'C' || peca == 'c') && ((deslvert == 1 && deslhor == 2 ) || (deslvert == 2 && deslhor == 1))) { mover = 1; } if (mover){ xadrez[ld] [cold] = xadrez[lo] [colo]; xadrez[lo] [colo] = ' '; return 1; }else { return 10; } } else { return 0; } } int main () { int lo, ld, colo, cold; while (1){ pintarTelaTexto(); printf("Digita a linha e coluna da peca que quer mover:"); scanf("%d %d", &lo, &colo); printf("\nDigita a linha e coluna de destino na peca:"); scanf("%d %d", &ld, &cold); int resultado = moverpecas (lo, ld, colo, cold); if ( resultado != 1) { switch (resultado ) { case 10 : printf("\n ERRO: A peca não pode ser movida dessa forma"); getch (); break; case 0 : printf("\n ERRO: Coordenadas invalidas"); getch (); break; case 1 : break; } printf ("\n Essa jogada não pode ser feita"); } } // a minha duvida seria onde como fazer os laços de vitoria se do jogador ou computador // como usar a parte do minimax para criar o computador jogar; getch(); return 0; }
  3. kelly salinas

    Jogo de Xadrez

    Oi Pessoal gostaria de saber se vocês consegue me ajudar, nesse caso de programação. Gostaria de saber como declarar o laço de vitória e também como colocar jogador x computador ? #include <stdlib.h> char xadrez [3] [3] = {' ', ' ', ' '}, {' ', ' ', ' '}, {' ', ' ', ' '} }; int contareibranco = 0, contatorre1branco = 0, contatorre2branco = 0; int contareipreto = 0, contatorre1preto = 0, contatorre2preto = 0; int pintarTelaTexto () { // coloquei este comando para tornar o tabuleiro visivel system("CLS"); int lin, col, r; for (lin=0; lin < 3; lin++) { //quantidade de linhas do tabuleiro for (r = 0; r < 3; r++) { for (col=0; col < 3; col++) { //quantidade de coluna do tabuleiro char peca = xadrez[lin] [col]; //inclusao da peca na determinada linha e coluna char letra = ( (lin+col) %2 == 0) ? '\xB2' : ' '; // aqui onde coloquei as cores do xadres preto e branco letra = ( r == 1 && peca != ' ') ? peca : letra; // essa parte não se trata de um variavel que retorna dois valores e sim operador ternario , maneira de não usar if if ( (lin + col) %2==0){ printf("\xB2\xB2\%c\xB2\xB2", letra); //onde centralizei as pecas no xadrez } else { printf(" %c ", letra); // onde centralizei a peca no xadrez } } printf("\n"); } printf("\n"); } } int moverpecas (int lo, int ld, int colo, int cold) { // inclui mais uma funcao para mover as pecas int mover = 0; // fazer o movimento das pecas char peca; int deslvert = abs (ld - lo); // seria o deslocamento da peca na vertical, coloquei o abs para ter o valor absoluto int deslhor = abs (cold - colo); // seria o deslocamento da penca na horizontal, coloquei o abs para ter o valor absoluto if ( (lo >=0 && lo < 3 && colo >=0 && colo < 3) && // usei o if para o usuario não informar linha ou coluna que não exista; (ld >=0 && ld < 6 && cold >=0 && cold < 6) ) { peca = xadrez[lo] [colo]; // a peca onde esta na lina e coluna de origem if ( (peca == 'T' || peca == 't') && (deslvert == 0 || deslhor == 0)) { mover = 1; } // esse seria o movimento da torre onde se desloca apenas na horizontal ou vertical if ( (peca == 'B' || peca == 'b') && (deslvert == deslhor )) { mover = 1; } // esse seria o movimento do bispo onde o movimento vertical e igual ao horizontal if ( (peca == 'C' || peca == 'c') && ((deslvert == 1 && deslhor == 2 ) || (deslvert == 2 && deslhor == 1))) { mover = 1; } // esse seria o movimento do cavalo , percebe que aqui eu so consegui fazer dessa forma incluindo dois movimentos: 1x2 ou 2x1 seja uma casa vertical e duas na horizontal ou o inverso if (mover){ xadrez[ld] [cold] = xadrez[lo] [colo]; // chamei a funcao xadrez para informar qual o direcionamento da peca xadrez[lo] [colo] = ' '; // local onde a peca vai ficar em sua origem return 1; // confirmacao do movimento da peca }else { return 10; // A peca não pode ser movida dessa forma } } else { return 0; } } int main () { // essa função é para digitar a origem e destino da peca int lo, ld, colo, cold; // inclui na funcao para usuario digitar a peca que desja (lo = linha origem, ld =linha destino, colo= coluna origem, cold =coluna destino) while (1){ pintarTelaTexto(); printf("Digita a linha e coluna da peca que quer mover:"); scanf("%d %d", &lo, &colo); printf("\nDigita a linha e coluna de destino na peca:"); scanf("%d %d", &ld, &cold); int resultado = moverpecas (lo, ld, colo, cold); if ( resultado != 1) { switch (resultado ) { case 10 : printf("\n ERRO: A peca não pode ser movida dessa forma"); getch (); break; case 0 : printf("\n ERRO: Coordenadas invalidas"); getch (); break; case 1 : break; } printf ("\n Essa jogada não pode ser feita"); // essa mensagem seria de erro caso o usuario digite uma linha ou coluna que não exista; } } getch(); return 0;
×
×
  • Criar Novo...