Ir ao conteúdo

Posts recomendados

Postado

Fala galera,

 

estou tentando criar um jogo da forca no visualg com meu nome

O enunciado é assim:

 

7) Faça um jogo da forca utilizando vetores. A palavra poderá ser definida pelo próprio programador dentro do programa e não é necessário existir um número limite de tentativas. Porém, é necessário que se exiba a palavra em cada etapa com as letras descobertas e as letras não descobertas sendo representadas com _..

 

Fiz assim: 

Algoritmo "semnome"

var
   vvetor1, vvetor2 :vetor[1..8] de caracter
   x : caracter
   y : inteiro
inicio
   para y de 1 ate 8 faca
      vvetor1[y] := "_"
   fimpara
   vvetor2[1] := "V"
   vvetor2[2] := "i"
   vvetor2[3] := "n"
   vvetor2[4] := "i"
   vvetor2[5] := "c"
   vvetor2[6] := "i"
   vvetor2[7] := "u"
   vvetor2[8] := "s"
para y de 1 ate 8 faca
   enquanto vvetor1[y] <> vvetor2[y] faca
      leia(x)
            se x = vvetor2[y] então
               vvetor1[y] := vvetor2[y]
               para y de 1 ate 8 faca
                  escreva(vvetor1[y]," ")
               fimpara
            senao
               escreva(vvetor1[y]," ")
            fimse
   fimenquanto
fimpara
Fimalgoritmo


 

Estou com dificuldade em criar o algoritmo. Alguém pode me dar uma luz?

  • Curtir 1
Postado

@viniciusv21     seu código está bom, mas você precisa verificar cada letra da palavra então esse loop do meio precisa fazer essas verificações e depois imprimir as letras que já foram acertadas ou se não imprime " - "  e volta para pegar outra letra e repete isso até acertar todas as letras da palavra ou se você quiser parar então digite o número 2 .

   veja como ficaria seu código :

Algoritmo "jogo da forca"
var
  vvetor1, vvetor2 :vetor[1..8] de caracter
  x : caracter
  y,a : inteiro
inicio
  para y de 1 ate 8 faca
    vvetor1[y] := "_"
  fimpara
  vvetor2[1] := "V"
  vvetor2[2] := "i"
  vvetor2[3] := "n"
  vvetor2[4] := "i"
  vvetor2[5] := "c"
  vvetor2[6] := "i"
  vvetor2[7] := "u"
  vvetor2[8] := "s"
  repita
    escreval("digite uma letra ou digite 2 para sair")
    leia(x)
    limpatela
    para y de 1 ate 8 faca
      se x = vvetor2[y] ENTÃO
        vvetor1[y] := vvetor2[y]
      fimse
    fimpara
    escreva("Aqui A Palavra --> ")
    para a de 1 ate 8 faca
      escreva(vvetor1[a]," ")
    fimpara
    escreval
    se ((vvetor1[1]="V")e (vvetor1[2]="i")e (vvetor1[3]="n")) ENTÃO
      se ((vvetor1[4]="i")e (vvetor1[5]="c")e (vvetor1[6]="i")) ENTÃO
        se ((vvetor1[7]="u")e (vvetor1[8]="s")) ENTÃO
          x := "2"
          escreval("voce Acertou A Palavra")
        fimse
      fimse
    fimse
  ate x="2"
Fimalgoritmo

 

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

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!