Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

  • 0
Caique da hora

Pascalzim

Pergunta

1 resposta a esta questão

Recommended Posts

Bom dia,

 

Aqui não é lugar para fazermos o trabalho para você. Você chegou a tentar resolver os problemas? Caso tenha alguma dúvida na resolução de algum em específico podemos ajudar. 

 

Abraços,

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Universo
      Ola,sou novo no fórum e também na área de programação e estou com uma dúvida e precisando de ajuda em um código que acredito eu ser simples, estou tentando executar um jogo da forca utilizando arquivo binário e parece que a variável palavraCerta não está recebendo nenhuma das palavras cadastradas, alguém poderia dar uma olhada no código e me apontar o erro(s) do código? segue o código abaixo:
      Program pzim ;
      type biblioteca = record
      palavra : string;
      dica : string;
      end;
      type declareg = file of biblioteca;
      {------------------------------------------------------------------------------------------------}
      procedure criarArquivo (var arquivoPalavras : declareg);
      begin
      {$I-}
      reset(arquivoPalavras);
      if IOResult <> 0 then
      rewrite(arquivoPalavras);
      {$I+}
      end;
      {-----------------------------------------------------------------------------------------------}
      procedure inserirPalavras (var arquivoPalavras : declareg);
      var PeD : biblioteca;
      cont : integer;
      begin
      for cont:= 1 to 2 do
      begin
      clrscr;
      write('Digite uma palavra: ');
      read(PeD.palavra);
      seek (arquivoPalavras, filesize(arquivoPalavras));
      write(arquivoPalavras,PeD);
      write('Digite uma dica: ');
      read(PeD.dica);
      seek (arquivoPalavras, filesize(arquivoPalavras));
      write(arquivoPalavras,PeD);
      end;
      end;
      {-----------------------------------------------------------------------------------------------}
      procedure adivinhar(var arquivoPalavras : declareg);
      var vetorpalav: array [1..2] of string;
      palavraCerta, palavraParcial:string;
      tentativa :Char;
      qtdTentativas, X, opc :Integer;
      acertouPalavra: Boolean;
      begin
      qtdTentativas := 8;
      repeat
      writeln;
      writeln (' Jogo da Forca');
      writeln;
      write (' Digite de 1 a 2 para escolher uma palavra: ');
      readln (opc);
      until (opc >= 1) and (opc <= 2);

      palavraCerta := vetorpalav[opc];

      for X := 0 to Length(palavraCerta) do
      begin
      if (palavraCerta[X] = ' ') then
      palavraParcial[X] := ' '
      else if (palavraCerta[X] = '-') then
      palavraParcial[X] := '-'
      else
      palavraParcial[X] := '*';
      end;

      repeat
      ClrScr;

      writeln;
      writeln (' ',palavraParcial);
      writeln;

      acertouPalavra := true;

      for X := 1 to Length (palavraCerta) do
      if palavraParcial[X] = '*' then
      acertouPalavra := false;

      if acertouPalavra = true then
      begin
      writeln (' Parabens, voce acertou a palavra.');
      readln;
      break;
      end
      else if qtdTentativas > 0 then
      begin
      writeln (' Voce tem ', qtdTentativas, ' tentativas restantes.');

      write (' Digite uma letra (letra minuscula): ');
      tentativa := readkey;
      if Pos(tentativa, palavraParcial) = 0 then
      for X := 1 to Length(palavraCerta) do
      begin
      if (palavraCerta[X] = tentativa) then
      begin
      palavraParcial[X] := tentativa;
      end
      else if Pos(tentativa, palavraCerta) = 0 then
      begin
      qtdTentativas := qtdTentativas - 1;
      break;
      end;
      end
      else
      qtdTentativas := qtdTentativas - 1;
      end
      else
      begin
      writeln (' Voce perdeu, tente novamente.');
      readln;
      break;
      end;
      until tentativa = Chr(27);
      end;
      {----------------------------------------------------------------------}
      procedure Menu;
      var opcao : integer;
      arquivoPalavras : declareg;
      begin
      assign(arquivoPalavras,'C:\Forca.bin');
      criarArquivo(arquivoPalavras);
      repeat
      clrscr;
      writeln(' Forca ');
      writeln('1 - Inserir Palavras');
      writeln('2 - Jogar');
      writeln('3 - Sair');
      writeln('Opcao: ');
      readln(opcao);
      case opcao of
      1: inserirPalavras(arquivoPalavras);
      2: adivinhar(arquivoPalavras);
      end;
      until opcao = 3;
      close(arquivoPalavras);
      end;


      Begin
      Menu;
      End.
      Obrigado!
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.