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.