Medievil
Power Member
Boas tardes!
Antes de mais quero pedir desculpa pela criação deste post que pouco contribui para o fórum. Não é minha intenção incomodar alguém, mas sim de pedir ajuda.
A minha namorada está preocupada com um trabalho que lhe foi proposto pelo professor (Aplicações Informáticas B, 12º ano), que consiste na criação de um jogo da Forca em linguagem Pascal. Ela está bastante perdida de como fazer o trabalho e, por isso, queria pedir a alguém que dispusesse um pouco do seu tempo a tentar ajudar, o que seria bastante importante e ficaria profundamente agradecido.
À frente coloco um conjunto de instruções que ela recebeu do professor para a criação do programa e seria indispensável segui-las à regra:
"Pretende-se uma aplicação em pascal que implemente o jogo da forca. A aplicação deverá:
- Começar por solicitar a palavra;
- Limpar o ecrã;
- Colocar no ecrã o carater “_” por cada letra separando os carateres por espaços;
- Pedir a inserção de letras ao utilizador e verificar se fazem ou não parte da palavra introduzida. Após a verificação se a letra introduzida fizer parte da palavra terá de “rescrever” a palavra substituindo o carater “_” pela letra em questão ou contar como penalização;
- Considerar o máximo de 6 penalizações, à sétima perde;
- No final de cada introdução deverá ser questionado o utilizador se pretende tentar descobrir a palavra. Se tentar e falhar conta como penalização.
- Após o términos do jogo com uma palavra deverá ser dada a possibilidade de jogar novamente.
Nota: a dimensão máxima das palavra é de 10 carateres."
(a citação acabou)
Antes de vir aqui pedir a vossa ajuda, ela ainda fez isto:
Program Jogo_da_forca
Uses
Crt;
Var
Palavra: array[1..10] of string[10]
Letras,falhas,encontrou,I:string
Begin
Palavra:= ‘informatica’;
Letras:=0;
Falhas:=0;
I:=1;
Repeat
For I:=1 to LETRAS do
Begin
Write (‘_’);
Repeat
Writeln (‘Digite a letra correta’);
If letra
Readln (letra);
Letras:=Letras+1
I:=I+1
Until (A: ‘);
Encontrou:=false;
For I:=1 to LETRAS do
Begin
If letra:=A then
Begin
Write (letra ‘ ‘)
Encontrou:=true;
Write (‘_’);
End;
If Encontrou:=false then
Begin
Falhas:=Falhas+1;
Writeln (‘o número de falhas está em ‘,falhas);
End;
Until (Falhas=7) or (letras=letras)
No entanto, como já puderam verificar, está de longe correto. Por esse motivo, queria pedir a ajuda a alguém experiente na matéria, que não se importasse de dar uma mãozinha com isto.
Peço desculpa, mais uma vez, e obrigado pela vossa atenção .
Antes de mais quero pedir desculpa pela criação deste post que pouco contribui para o fórum. Não é minha intenção incomodar alguém, mas sim de pedir ajuda.
A minha namorada está preocupada com um trabalho que lhe foi proposto pelo professor (Aplicações Informáticas B, 12º ano), que consiste na criação de um jogo da Forca em linguagem Pascal. Ela está bastante perdida de como fazer o trabalho e, por isso, queria pedir a alguém que dispusesse um pouco do seu tempo a tentar ajudar, o que seria bastante importante e ficaria profundamente agradecido.
À frente coloco um conjunto de instruções que ela recebeu do professor para a criação do programa e seria indispensável segui-las à regra:
"Pretende-se uma aplicação em pascal que implemente o jogo da forca. A aplicação deverá:
- Começar por solicitar a palavra;
- Limpar o ecrã;
- Colocar no ecrã o carater “_” por cada letra separando os carateres por espaços;
- Pedir a inserção de letras ao utilizador e verificar se fazem ou não parte da palavra introduzida. Após a verificação se a letra introduzida fizer parte da palavra terá de “rescrever” a palavra substituindo o carater “_” pela letra em questão ou contar como penalização;
- Considerar o máximo de 6 penalizações, à sétima perde;
- No final de cada introdução deverá ser questionado o utilizador se pretende tentar descobrir a palavra. Se tentar e falhar conta como penalização.
- Após o términos do jogo com uma palavra deverá ser dada a possibilidade de jogar novamente.
Nota: a dimensão máxima das palavra é de 10 carateres."
(a citação acabou)
Antes de vir aqui pedir a vossa ajuda, ela ainda fez isto:
Program Jogo_da_forca
Uses
Crt;
Var
Palavra: array[1..10] of string[10]
Letras,falhas,encontrou,I:string
Begin
Palavra:= ‘informatica’;
Letras:=0;
Falhas:=0;
I:=1;
Repeat
For I:=1 to LETRAS do
Begin
Write (‘_’);
Repeat
Writeln (‘Digite a letra correta’);
If letra
Readln (letra);
Letras:=Letras+1
I:=I+1
Until (A: ‘);
Encontrou:=false;
For I:=1 to LETRAS do
Begin
If letra:=A then
Begin
Write (letra ‘ ‘)
Encontrou:=true;
Write (‘_’);
End;
If Encontrou:=false then
Begin
Falhas:=Falhas+1;
Writeln (‘o número de falhas está em ‘,falhas);
End;
Until (Falhas=7) or (letras=letras)
No entanto, como já puderam verificar, está de longe correto. Por esse motivo, queria pedir a ajuda a alguém experiente na matéria, que não se importasse de dar uma mãozinha com isto.
Peço desculpa, mais uma vez, e obrigado pela vossa atenção .
Última edição: