Ir ao conteúdo
  • Cadastre-se

Jogo da forca no visualG quem me ajuda?


Ir à solução Resolvido por cesarrmtimbo,

Posts recomendados

aí galera! Estou com um desafio para resolver, meu professor pediu que ressol vessemos o jogo da forca no visualG.

porém estou com varias duvidas, por não conhecer bem as funções do visualG estou tendo dificuldades em elaborar minha lógica.

Comecei a desenvolver o pequeno esboço do meu algoritmo, para entender como tudo funciona antes de aplicar na magnitude exigida pelo professor,

segue o anexo com meu algoritmo, se alguém puder me ajudar e se colocar a disposição para eventuais duvidas agradeço. 

Duvida forca.txt

Link para o comentário
Compartilhar em outros sites

A ideia é criar o jogo da forca mesmo.Segue o enunciado.

 

Este exercício é um desafio!

 

Ultimate) Crie um algoritmo estilo Jogo da forca, o algoritmo deverá ficar solicitando uma nova letra. A cada erro você informa qual parte do corpo o bonequinho perdeu. Cabeça, braço esquerdo direito, tronco, pernas.. etc. O programa deve sortear uma palavra em uma lista de 30 palavras, vocês definem quais são. Ao terminar um jogo, o programa deve perguntar se deseja começar uma nova partida.

 

Até logo

Link para o comentário
Compartilhar em outros sites

  • Solução
 
algoritmo "Jogo da Forca"
// Função : Jogo da forca
// Autor : Cesar Roberto Martins
// Data : 28/05/2015
// Seção de Declarações
var
palavras:vetor[1..20] de caracter
palavra:vetor[1..20] de caracter
palavraVetor:vetor[1..10] de caracter
sorteio,i,qntCarac,verifica,tentativas,erros,pergunta:inteiro
letra,palavraSorteada,dica:caracter
achou:logico
procedimento desenha
inicio
se erros = 0 então
   escreval("    *********************")
   escreval("    ***               ***")
   escreval("    ***                * ")
   escreval("    ***    ")
   escreval("    ***    ")
   escreval("    ***    ")
   escreval("    ***    ")
   escreval("    ***    ")
   escreval("    ***    ")
   escreval("    ***    ")
   escreval("    ***    ")
   escreval("    ***    ")
   escreval("    ***    ")
   escreval("    ***    ")
   escreval("***********")
   escreval("***********")
   senao
   se erros = 1 então
      escreval("    *********************")
      escreval("    ***               ***")
      escreval("    ***                * ")
      escreval("    ***              *****")
      escreval("    ***             *******")
      escreval("    ***             *******")
      escreval("    ***              *****")
      escreval("    ***                *")
      escreval("    ***    ")
      escreval("    ***    ")
      escreval("    ***    ")
      escreval("    ***    ")
      escreval("    ***    ")
      escreval("    ***    ")
      escreval("***********")
      escreval("***********")
      senao
      se erros = 2 então
         escreval("    *********************")
         escreval("    ***               ***")
         escreval("    ***                * ")
         escreval("    ***              *****")
         escreval("    ***             *******")
         escreval("    ***             *******")
         escreval("    ***              *****")
         escreval("    ***                *")
         escreval("    ***               ***")
         escreval("    ***              * * *")
         escreval("    ***             *  *  *")
         escreval("    ***            *   *   *")
         escreval("    ***                *")
         escreval("    ***    ")
         escreval("***********")
         escreval("***********")
         senao
         se erros = 3 então
            escreval("    *********************")
            escreval("    ***               ***")
            escreval("    ***                * ")
            escreval("    ***              *****")
            escreval("    ***             *******")
            escreval("    ***             *******")
            escreval("    ***              *****")
            escreval("    ***                *")
            escreval("    ***               ***")
            escreval("    ***              * * *")
            escreval("    ***             *  *  *")
            escreval("    ***            *   *   *")
            escreval("    ***                *")
            escreval("    ***               * *")
            escreval("    ***              *   *")
            escreval("***********         *     *")
            escreval("***********        *       *")
            escreval()
            escreval("--------Game Over----------")
         fimse
      fimse
   fimse
fimse
fimprocedimento
inicio
escreval("Jogar?")
escreval("1-)Sim")
escreval("0-)Sair")
leia(pergunta)
enquanto pergunta <> 0 faca
palavras[1]:= "Casa"
palavras[2]:= "Rua"   //aqui estão as palavras armazenadas
palavras[3]:= "Hotel"
palavras[4]:= "Avenida"
palavras[5]:= "Parque"
palavras[6]:= "Banana"
palavras[7]:= "Maçã"
palavras[8]:= "Abacaxi"
palavras[9]:= "Melancia"
palavras[10]:= "Uva"
palavras[11]:= "Martelo"
palavras[12]:= "Macaco"
palavras[13]:= "Chave"
palavras[14]:= "Prego"
palavras[15]:= "Parafuso"
palavras[16]:= "Cachorro"
palavras[17]:= "Morcego"
palavras[18]:= "Gato"
palavras[19]:= "Jacaré"
palavras[20]:= "Gorila"
sorteio:= randi(20)
se sorteio = 0 então      //aqui faço o sorteio
   sorteio:= sorteio + 1
fimse
escolha sorteio
        caso 1,2,3,4,5
        dica := "Lugar"
        caso 6,7,8,9,10
        dica:= "Frutas"
        caso 11,12,13,14,15
        dica:= "Ferramentas"
        caso 16,17,18,19,20
        dica := "Animais"
        outrocaso
        escreval("Sorteio invalido")
fimescolha
palavraSorteada:= palavras[sorteio] //captura a palavra sorteada e armazena
qntCarac:= compr(palavraSorteada)  //define o comprimento da palavra sorteada para impressao na tela dos "_"
para i de 1 ate qntCarac faca
     palavraVetor[i]:= copia(palavraSorteada,i,1)
fimpara
tentativas:= 0
enquanto tentativas <= 10 faca
tentativas := tentativas + 1
limpatela()
para i de 1 ate qntCarac faca
     escreva(palavra[i])
     escreva(" ")
     se (i <> verifica) e (palavra[i]= "") então
        escreva("_")
     fimse
fimpara
se (palavra[1] + palavra[2] + palavra[3] + palavra[4] + palavra[5] + palavra[6] + palavra[7] + palavra[8] + palavra[9]) = palavraSorteada então
    timer 500 on
    timer 0 off
   interrompa
fimse
escreval()
escreval()
escreval("JOGO DA FORCA")
escreval()
escreval("DICA: ",dica)
escreval("----------------------------")
desenha()
escreval()
escreval("Digite uma letra: ")
leia(letra)
para i de 1 ate qntCarac faca
     se letra = palavra[i] então
        limpatela()
        escreval("Esta letra você ja acertou!")
        timer 1500 on
        timer 0 off
        interrompa
     fimse
fimpara
verifica:= pos(letra,palavraSorteada)
achou := falso
para i de 1 ate qntCarac faca
     se (i = verifica) ou (letra = palavraVetor[i]) então
        palavra[i]:= maiusc(letra)
        achou := verdadeiro
        limpatela
        escreva(palavra[i])
     fimse
fimpara
se (achou = falso) então
   erros:= erros + 1
fimse
se erros >= 3 então
   limpatela()
   desenha()
   timer 1000 on
   timer 0 off
   interrompa
fimse
fimenquanto
se erros = 3 então
   limpatela()
   para i de 1 ate qntCarac faca
           palavra[i]:= ""
           palavra[i]:= ""
           palavraVetor[i]:= ""
      fimpara
      sorteio:= 0
      i:= 0
      qntCarac:= 0
      verifica:= 0
      tentativas:= 0
      erros:= 0
      pergunta := 0
      letra:= ""
      palavraSorteada := ""
      escreval("Mais sorte da próxima vez!")
   senao
   se (palavra[1] + palavra[2] + palavra[3] + palavra[4] + palavra[5] + palavra[6] + palavra[7] + palavra[8] + palavra[9]) = palavraSorteada então
      limpatela()
      para i de 1 ate qntCarac faca
           palavra[i]:= ""
           palavra[i]:= ""
           palavraVetor[i]:= ""
      fimpara
      sorteio:= 0
      i:= 0
      qntCarac:= 0
      verifica:= 0
      tentativas:= 0
      erros:= 0
      pergunta := 0
      letra:= ""
      palavraSorteada:= ""
      escreval("Parabéns! Você acertou a palavra!")
   fimse
fimse
timer 2000 on
timer 0 off
limpatela()
escreval("Jogar?")
escreval("1-)Sim")
escreval("0-)Sair")
leia(pergunta)
fimenquanto
finalalgoritmo

 

 

 

 

 

Mesmo sem ajuda, pra quem interessar está ai meu algoritmo, completei hj.

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

  • 10 meses depois...
Visitante
Este tópico está impedido de receber novas respostas.

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