1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Ajuda Quatro em linha

Discussão em 'Programação' iniciada por Pinkz0rd, 4 de Maio de 2009. (Respostas: 12; Visualizações: 860)

  1. Pinkz0rd

    Pinkz0rd Power Member

    Sera que alguem me pode ajudar a fazer o jogo 4 em linha em programação c???
    agradecia :D
     
  2. Psycop

    Psycop I fold therefore I AM

    Podemos, mas para isso tens de nos dizer onde é que tens dificuldades!!!

    Se puderes posta aqui o codigo que já criaste, para que nos possamos ver o que já fizeste e se estas a cometer algum erro...

    Cumps
     
  3. Pinkz0rd

    Pinkz0rd Power Member

    pois esse e o problema >: não sei por onde começar xP
     
  4. Psycop

    Psycop I fold therefore I AM

    Não penses que te vamos desenvolver o codigo, o que podemos fazer a ajudar-te a aprender e corrigir-te alguns erros e duvidas que possam surgir...

    Começa por ler os seguintes tutoriais sobre C:
    Boa sorte
     
  5. Pinkz0rd

    Pinkz0rd Power Member

    sera que alguem tem o codigo ja feito que me possa mostrar? Z:
     
  6. Psycop

    Psycop I fold therefore I AM

    Mostrar-te o codigo era meio caminho andado para tu o copiares, e isso não tem valor...

    Se queres criar a aplicação, tudo bem podes aprender e desenvolve-la, caso queiras copiar o codigo de alguem estás no lugar errado...
    A internet tem muita informação que te pode levar a criar uma aplicação do genero, ler os tutoriais que te indiquei tambem ajuda...

    Se queres aprender e corrigir erros e tirar duvidas estás no sitio certo, caso queiras a papinha feita, tas no lugar errado, e tenho dito...

    Boa Sorte:D
     
  7. Granadafeup

    Granadafeup Power Member

    :nonono2::nonono2::nonono2:

    Tal como já disse o Psycop (e muitos outros utilizadores em outros topicos) aqui tira-se duvidas. Se queres codigo fá-lo.
     
  8. Pinkz0rd

    Pinkz0rd Power Member

    Ja programei o tabuleiro alguma dica do qe fazer a seguir??
    Código:
    #include "stdafx.h"
    #include <conio.h>
    #include <stdio.h>
    
    
    void main(void)
    
    {
        
        char tabuleiro[7][6];
    
        for(int i=0;i<8;i++)
        {
            for (int j=0;j<7;j++)
            {
            
                tabuleiro[i][j]=' ';
            }
        }
        int c;
    
        printf("   1 2 3 4 5 6 7");
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",201,205,203,205,203,205,203,205,203,205,203,205,203,205,187);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[0][0],186,tabuleiro[0][1],186,tabuleiro[0][2],186,tabuleiro[0][3],186,tabuleiro[0][4],186,tabuleiro[0][5],186,tabuleiro[0][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[1][0],186,tabuleiro[1][1],186,tabuleiro[1][2],186,tabuleiro[1][3],186,tabuleiro[1][4],186,tabuleiro[1][5],186,tabuleiro[1][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[2][0],186,tabuleiro[2][1],186,tabuleiro[2][2],186,tabuleiro[2][3],186,tabuleiro[2][4],186,tabuleiro[2][5],186,tabuleiro[2][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[3][0],186,tabuleiro[3][1],186,tabuleiro[3][2],186,tabuleiro[3][3],186,tabuleiro[3][4],186,tabuleiro[3][5],186,tabuleiro[3][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[4][0],186,tabuleiro[4][1],186,tabuleiro[4][2],186,tabuleiro[4][3],186,tabuleiro[4][4],186,tabuleiro[4][5],186,tabuleiro[4][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[5][0],186,tabuleiro[5][1],186,tabuleiro[5][2],186,tabuleiro[5][3],186,tabuleiro[5][4],186,tabuleiro[5][5],186,tabuleiro[5][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",200,205,202,205,202,205,202,205,202,205,202,205,202,205,188);
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        getch();
    
    }
    
     
    Última edição pelo moderador: 7 de Maio de 2009
  9. Granadafeup

    Granadafeup Power Member

    uma primeira sugestão seria fazeres o um loop para desenhares a tua tabela (tal como tens para inicializar o vector)

    segundo faz um scanf a para receber o input dos utilizadores

    terceiro faz código de forma a que sempre o utilizador coloca uma peça o tabuleiro seja actualizado o tabuleiro (se estiver tudo direito basta um loop)
     
  10. Pinkz0rd

    Pinkz0rd Power Member

    Código:
    #include "stdafx.h"
    #include <conio.h>
    #include <stdio.h>
    #include <stdlib.h>
    
    
    void main(void)
    
    {
        
        char tabuleiro[6][7];
        int j1;
        int j2;
        
    
    
        bool fim=false;
    
        int jogador=1;
    
        for(int i=0;i<8;i++)
        {
            for (int j=0;j<7;j++)
            {
            
                tabuleiro[i][j]=' ';
    
            }
        }
    
        while (!fim)
        {
        int c;
        system("cls");
        printf("   1 2 3 4 5 6 7");
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",201,205,203,205,203,205,203,205,203,205,203,205,203,205,187);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[0][0],186,tabuleiro[0][1],186,tabuleiro[0][2],186,tabuleiro[0][3],186,tabuleiro[0][4],186,tabuleiro[0][5],186,tabuleiro[0][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[1][0],186,tabuleiro[1][1],186,tabuleiro[1][2],186,tabuleiro[1][3],186,tabuleiro[1][4],186,tabuleiro[1][5],186,tabuleiro[1][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[2][0],186,tabuleiro[2][1],186,tabuleiro[2][2],186,tabuleiro[2][3],186,tabuleiro[2][4],186,tabuleiro[2][5],186,tabuleiro[2][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[3][0],186,tabuleiro[3][1],186,tabuleiro[3][2],186,tabuleiro[3][3],186,tabuleiro[3][4],186,tabuleiro[3][5],186,tabuleiro[3][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[4][0],186,tabuleiro[4][1],186,tabuleiro[4][2],186,tabuleiro[4][3],186,tabuleiro[4][4],186,tabuleiro[4][5],186,tabuleiro[4][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[5][0],186,tabuleiro[5][1],186,tabuleiro[5][2],186,tabuleiro[5][3],186,tabuleiro[5][4],186,tabuleiro[5][5],186,tabuleiro[5][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",200,205,202,205,202,205,202,205,202,205,202,205,202,205,188);
        
    
    
    
        if (jogador==1)
        {
            printf("\n\n\n\n Jogador 1 - Introduzir as coordenadas (numero):");
    
            scanf("%d",&j1);
            int posicao=-1;
            for(int i=5;i>=0;i--)
            {
                if (tabuleiro[i][j1-1]==' ') 
                {
                    posicao=i;
                    i=-1;
                }
            }
            if (posicao!=-1)
            {
                tabuleiro[posicao][j1-1]='O';
                jogador=2;
            }
    
        }
        else
        {
        printf("\n\n\n\n Jogador 2 - Introduzir as coordenadas (numero):");
    
            scanf("%d",&j2);
            int posicao=-1;
            for(int i=5;i>=0;i--)
            {
                if (tabuleiro[i][j2-1]==' ') 
                {
                    posicao=i;
                    i=-1;
                }
            }
            if (posicao!=-1)
            {
                tabuleiro[posicao][j2-1]='X';
                jogador=1;
            }
        }
        }
        getch();
    
    }
     



    tou a ir no bom caminho? >:
     
    Última edição pelo moderador: 7 de Maio de 2009
  11. iznougud

    iznougud I quit My Job for Folding

    Código:
        printf("   1 2 3 4 5 6 7");
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",201,205,203,205,203,205,203,205,203,205,203,205,203,205,187);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[0][0],186,tabuleiro[0][1],186,tabuleiro[0][2],186,tabuleiro[0][3],186,tabuleiro[0][4],186,tabuleiro[0][5],186,tabuleiro[0][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[1][0],186,tabuleiro[1][1],186,tabuleiro[1][2],186,tabuleiro[1][3],186,tabuleiro[1][4],186,tabuleiro[1][5],186,tabuleiro[1][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[2][0],186,tabuleiro[2][1],186,tabuleiro[2][2],186,tabuleiro[2][3],186,tabuleiro[2][4],186,tabuleiro[2][5],186,tabuleiro[2][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[3][0],186,tabuleiro[3][1],186,tabuleiro[3][2],186,tabuleiro[3][3],186,tabuleiro[3][4],186,tabuleiro[3][5],186,tabuleiro[3][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[4][0],186,tabuleiro[4][1],186,tabuleiro[4][2],186,tabuleiro[4][3],186,tabuleiro[4][4],186,tabuleiro[4][5],186,tabuleiro[4][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",204,205,206,205,206,205,206,205,206,205,206,205,206,205,185);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",186,tabuleiro[5][0],186,tabuleiro[5][1],186,tabuleiro[5][2],186,tabuleiro[5][3],186,tabuleiro[5][4],186,tabuleiro[5][5],186,tabuleiro[5][6],186);
        printf("\n  %c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",200,205,202,205,202,205,202,205,202,205,202,205,202,205,188);
    
    Se eu fosse teu professor e visse isto chumbavas logo (ou pedia-te para mudares o tamanho do tabuleiro para 500 por 500)... Nem via mais nada...

    Código:
    
    for(int y = 0; y<13; y++)
    {
    	printf("\n  ");
        
    	if(y % 2 == 0)
    	{
    		switch(y)
    		{
    			case 0:
    				printf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",201,205,203,205,203,205,203,205,203,205,203,205,203,205,187);
    				break;
    			case 12:
    				printf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",200,205,202,205,202,205,202,205,202,205,202,205,202,205,188);
    				break;
    			default:
    				printf("%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c",201,205,203,205,203,205,203,205,203,205,203,205,203,205,187);
    				break;
    		}
    	}
    	else
    	{
    		for(int x=0; x<=7; x++)
    		{
    			printf("%c%c", 186, tabuleiro[(y-1)/2][x]);
    			if(x == 7)
    				printf("%c", 186);
    		}
    	}
        
    }
    
    Agora vê lá se percebes as diferenças...

    Espero que tenhas o código identado e que tenha perdido a identação ao passar para aqui... porque se tiveres o código como mostraste aqui vais dar uma dor de cabeça ao prof...
     
    Última edição: 6 de Maio de 2009
  12. fabio.silva

    fabio.silva Power Member

    Se te apetecer fazer algo mais "bonito",ou seja, com algum grafismo,experimenta allegro, é muito fácil.
    Cumps
     
  13. Pinkz0rd

    Pinkz0rd Power Member


    epa mas eu inda sou um basico nisto >: tem qe ser com calma :\
     

Partilhar esta Página