Douglas Dantas 0 Denunciar post Postado Julho 19, 2012 Olá! Eu estou criando um jogo da velha simples para resolver um exercício, porém é mais difícil do que imaginei. Depois de muita labuta, fiz isso: JogoDaVelha.pas Porém o compilador está dando erros que eu não sei quais são. Se poderem me ajudar, serei muito grato. P.S.: As linhas onde o Compilador acusou erros eu comentei do lado avisando. Olá! Eu estou criando um jogo da velha simples para resolver um exercício, porém é mais difícil do que imaginei. Depois de muita labuta, fiz isso: JogoDaVelha.pas Porém o compilador está dando erros que eu não sei quais são. Se poderem me ajudar, serei muito grato. P.S.: As linhas onde o Compilador acusou erros eu comentei do lado avisando. Me dediquei tanto que baixei o DiagramDesigner e desenhei uma parte do algoritmo nele. Compartilhar este post Link para o post Compartilhar em outros sites
Ismaeldm 5 Denunciar post Postado Julho 22, 2012 Acho que você complicou um pouco no seu algoritmo ^^' Eu também, para praticar, fiz um jogo da velha uma vez, que podia jogar contra a máquina ou com outra pessoa... No meu código fiz o seguinte... Criei uma string para armazenar as jogadas, cada caractere da string correspondia a um quadrante do jogo, ou seja, se a string tivesse este conteúdo: 'XXOOXOOOX', o computador desenhava na tela assim... X | X | O ----------- O | X | O ----------- O | O | X criei uma procedure "jogar", a qual era responsável por ler qual quadrante iria ser jogado, e colocar este valor nesta string, e após isso desenha na tela o jogo... tambem criei uma procedure chamada "verifica", a qual lia se alguma linha (vertical, horizontal e diagonal), estivesse com conteúdo igual, neste caso, ela iria retornar true, pois os quadrantes 1, 5 e 9 (diagonal) são iguais :) Para determinar de quem era a vez, apenas utilizei uma variavel boolean, que quando fosse falsa era a vez do "X", por exemplo, e quando fosse true era a vez do "O", essa variavel ficava trocando de true para false a cada jogada Compartilhar este post Link para o post Compartilhar em outros sites
Douglas Dantas 0 Denunciar post Postado Julho 26, 2012 Acho que você complicou um pouco no seu algoritmo ^^' Eu também, para praticar, fiz um jogo da velha uma vez, que podia jogar contra a máquina ou com outra pessoa... No meu código fiz o seguinte... Criei uma string para armazenar as jogadas, cada caractere da string correspondia a um quadrante do jogo, ou seja, se a string tivesse este conteúdo: 'XXOOXOOOX', o computador desenhava na tela assim... X | X | O ----------- O | X | O ----------- O | O | X criei uma procedure "jogar", a qual era responsável por ler qual quadrante iria ser jogado, e colocar este valor nesta string, e após isso desenha na tela o jogo... tambem criei uma procedure chamada "verifica", a qual lia se alguma linha (vertical, horizontal e diagonal), estivesse com conteúdo igual, neste caso, ela iria retornar true, pois os quadrantes 1, 5 e 9 (diagonal) são iguais :) Para determinar de quem era a vez, apenas utilizei uma variavel boolean, que quando fosse falsa era a vez do "X", por exemplo, e quando fosse true era a vez do "O", essa variavel ficava trocando de true para false a cada jogada Gostei muito do seu. Mas ainda quero saber o que há de errado no meu. Sei que o algoritmo está complicado, pois não pensei simples. Mas era para rodar. O está errado? Compartilhar este post Link para o post Compartilhar em outros sites
Ismaeldm 5 Denunciar post Postado Julho 26, 2012 O erro está no seu if, você usou algo do tipo "tab[i,1]=tab[i,2]=tab[i,3]", e não tem como o compilador reconhecer isso, se você quer que os 3 sejam iguais, então faça "(tab[i,1]=tab[i,2]) and (tab[i,2]=tab[i,3])" Compartilhar este post Link para o post Compartilhar em outros sites