Ir ao conteúdo
  • Cadastre-se

VisualG Dicas para o Jogo da Velha


Posts recomendados

Olá a todos.

Sou novo na programação, estou começando minha graduação em analise e desenvolvimento de sistema e estou iniciando lógica de programação. Recentemente  me foi proposto criar no Visualg um jogo da velha. Criei este algoritmo, ele  está funcionando perfeitamente:

 

algoritmo "jogodavelha"

var
   jog: vetor[1..3,1..3] de caractere
   comp,cont, i, j, a, b, fim: inteiro
   resp, aux: caractere
procedimento interface()
inicio
   escreval ("===================")
   escreval ("   JOGO DA VELHA   ")
   escreval ("+-----+-----+-----+")
   para i de 1 ate 3 faca
        para j de 1 ate 3 faca
             escreva ("| ")
             escreva  (jog[i,j]:4)
        fimpara
        escreva ("|")
        escreval ()
        escreval ("+-----+-----+-----+")
   fimpara
fimprocedimento
inicio
   comp <- 1
   para i de 1 ate 3 faca
        para j de 1 ate 3 faca
             cont <- cont+1
             jog[i,j] <- NumpCarac(cont)
        fimpara
   fimpara
   interface()
   repita
      escreval ()
      escreva ("Jogar onde? ")
      leia (resp)
      a <- 1
      b <- 1
      enquanto (jog[a,b] <> resp) faca
               se (jog[a,b] <> resp) então
                  b <- b + 1
                  se (b > 3) então
                     a <- a + 1
                     b <- 1
                  fimse
                  se (a > 3) então
                     a <- 1
                     limpatela
                     interface()
                     escreval ()
                     escreva ("Jogada inválida, escolha outra: ")
                     leia (resp)
                  fimse
               fimse
      fimenquanto
      escolha comp
         caso 1
              jog[a,b] <- "X"
         caso 2
              jog[a,b] <- "O"
              comp <- 0
      fimescolha
      comp <- comp + 1
      limpatela
      interface ()
      para i de 1 ate 3 faca
         se (jog[i,1] = jog[i,2]) e (jog[i,2] = jog[i,3]) então
             fim <- 1
         fimse
      fimpara
      para i de 1 ate 3 faca
         se (jog[1,i] = jog[2,i]) e (jog[2,i] = jog[3,i]) então
             fim <- 1
         fimse
      fimpara
      se (jog[1,1] = jog[2,2]) e (jog[2,2] = jog[3,3]) então
             fim <- 1
      fimse
      se (jog[1,3] = jog[2,2]) e (jog[2,2] = jog[3,1]) então
             fim <- 1
      fimse
   ate (fim = 1)
   escreval ("Fim de Partida")

fimalgoritmo

 

Há possibilidades de melhora-lo ou estou no caminho certo?
Link para o comentário
Compartilhar em outros sites

  • 3 anos depois...

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...