Ir ao conteúdo
  • Cadastre-se

luluvito

Membro Júnior
  • Posts

    1
  • Cadastrado em

  • Última visita

Reputação

1
  1. Boa noite pessoal, tudo bem? Estou com algumas dificuldades na criacao do algoritmo para um trabalho de um jogo da velha. linha 111: Tipos incompativeis! não e possível atribuir uma expressao do tipo "vazio" a uma expressao do tipo "logico". linha 115: Tipos incompativeis! não e possível atribuir uma expressao do tipo "vazio" a uma expressao do tipo "logico".. aqui esta o codigo completo: programa { const inteiro k = 200 inteiro cad = 0, vitorias[k] cadeia nomes[k], jogador funcao cadastrarPessoa(cadeia nome) { inteiro posicaoExistente = -1 para(inteiro i = 0; i < cad; i++) { se (nome == nomes[i]) { jogador = nome posicaoExistente = i } } se (posicaoExistente != -1) { jogador = nome } senao { nomes[cad] = nome vitorias[cad] = 0 jogador = nome cad++ } escreva("\n\n\n\n\n\n\n") } funcao desenharTabuleiro(caractere tabuleiro[][]) { para(inteiro i = 0; i < 3; i++) { para(inteiro j = 0; j < 3; j++) { escreva(" ", tabuleiro[i][j], " ") se (j < 2){ escreva("|")}} se (i < 2){ escreva("\n-----------\n")}} escreva("\n") } funcao verificarVitoria(caractere tabuleiro[][], caractere jogador) { logico volta = falso para(inteiro i = 0; i < 3; i++) { se (tabuleiro[i][0] == jogador e tabuleiro[i][1] == jogador e tabuleiro[i][2] == jogador){ retorne volta = verdadeiro } se (tabuleiro[0][i] == jogador e tabuleiro[1][i] == jogador e tabuleiro[2][i] == jogador){ volta = verdadeiro} } se (tabuleiro[0][0] == jogador e tabuleiro[1][1] == jogador e tabuleiro[2][2] == jogador){ retorne volta = verdadeiro } se (tabuleiro[0][2] == jogador e tabuleiro[1][1] == jogador e tabuleiro[2][0] == jogador){ retorne volta = verdadeiro } } funcao jogarJogoDaVelha() { caractere tabuleiro[3][3] = {{' ', ' ', ' '}, {' ', ' ', ' '}, {' ', ' ', ' '}} inteiro vez = 1 inteiro linha, coluna logico jogoEmAndamento = verdadeiro logico jogadorVenceu = falso enquanto (jogoEmAndamento) { desenharTabuleiro(tabuleiro) escreva("Jogador ") se (vez == 1) { escreva("X") } senao { escreva("O") } escreva(", informe a linha (0-2): ") leia(linha) escreva("Jogador ") se (vez == 1) { escreva("X") } senao { escreva("O") } escreva(", informe a coluna (0-2): ") leia(coluna) se (tabuleiro[linha][coluna] == ' ') { se (vez == 1) { tabuleiro[linha][coluna] = 'X' } senao { tabuleiro[linha][coluna] = 'O' } se (vez == 1) { jogadorVenceu = verificarVitoria(tabuleiro,'X') } senao { jogadorVenceu = verificarVitoria(tabuleiro,'O') } } senao { escreva("Posição ocupada. Escolha outra posição.\n") se (jogadorVenceu) { desenharTabuleiro(tabuleiro) escreva("Jogador ") se (vez == 1) { escreva("X") } senao { escreva("O") } escreva(" venceu!\n") para(inteiro i = 0; i < cad; i++) { se (jogador == nomes[i]) { vitorias[i]++ } } jogoEmAndamento = falso } senao { vez = -vez } } } } funcao inicio() { inteiro op cadeia nome caractere tabuleiro[3][3] escreva("Digite o nome do jogador. \n==> ") leia(nome) cadastrarPessoa(nome) faca { escreva("\n 1. Iniciar.\n 2. Trocar usuario.\n 3. Estatisticas \n 4. Encerrar. \n ==> ") leia(op) escreva("\n\n\n\n\n\n\n") escolha(op) { caso 1: escreva(jogador, " comeca como X\n") desenharTabuleiro(tabuleiro) pare caso 2: escreva("Digite o nome do jogador. \n==> ") leia(nome) cadastrarPessoa(nome) escreva("\n\n\n\n\n\n\n") pare caso 3: para(inteiro i = 0; i < cad; i++) { escreva("Jogador: ", nomes[i], " - Vitórias: ", vitorias[i], "\n") } pare } escreva("Pressione a tecla enter para continuar:") cadeia lixo leia(lixo) escreva("\n\n\n\n\n\n\n") } enquanto (op != 4) } }

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!