Ir para conteúdo
Fórum Script Brasil
  • 0

Jogo da Forca em C


mrdarc

Pergunta

Bom pessoal, acabo de chegar no fórum e trago comigo uma dúvida que pode parecer simples, mas tem me tirado o sono :D

Tenho que fazer um jogo da forca, e o jogo está 90% concluido, minha dificuldade no momento é fazer c/ que o laço pare e imprima na tela que o jogador ganhou(Só consigo fechar o jogo após as vidas acabarem, mesmo tendo acertado a palavra). Pelo que pesquisei eu teria que implementar um ponteiro, mas até agora não entendi como se faz. Se alguém tiver alguma dica ficarei muito agradecido.

#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>

int main()
{
char palavra[25],letra[25],lacuna[25]="__________";
int vida=3,x,i;

printf("\n\nDigite a palavra secreta:\n\n");
gets(palavra);
system("cls");

for(i=0;i<strlen(palavra);i++)
while(vida>0)
{
x=0;

printf("\n %s \n",lacuna);
printf("\n digite uma letra: ");
gets(letra);
for(i=0;i<strlen(palavra);i++)
{
if(letra[0]==palavra[i])
{
lacuna[i]=palavra[i];
x++;
}
}
if(x==0) {
vida=vida-1;
if(vida==0) {
printf("\n VOCE FOI ENFORCADO!");
printf("\n A PALAVRA ERA: %s",palavra);
break;
}
if(vida==0) {
printf("\n VOCE FOI ENFORCADO!");
printf("\n A PALAVRA ERA: %s",palavra);
break;
}
else
printf("\n VOCE ERROU! RESTAM %d VIDA(S)",vida); }

else {
printf("\n VOCE ACERTOU UMA LETRA!");
} } 
printf("\n\n");
system("pause");
return 0; }

Editado por kuroi
Adicionar tag CODE
Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Saudações,

Não vejo a necessidade da inclusão de ponteiros para fazer seu código/programa funcionar.

Você não está fazendo controle de quando é feito o acerto da palavra. Basta incluí-lo ao seu programa, alterar seu laço principal ("while") para que também considere os acertos.

Obs.: Não vejo necessidade do laço inicial ("for").

Abraços,

William Rodrigues.

Link para o comentário
Compartilhar em outros sites

  • 0

Valeu pela ajuda William Rodrigues.

Passando pra avisar que consegui fazer. O 'código' em si não ficou muito bonito mas está funcionando bem.

Está ai embaixo pra quem se interessar. :P

#include<stdio.h>
#include<string.h>
#include<conio.h>
#include<stdlib.h>

int main()
{
char tam_palavra,palavra[25],letra[25],lacuna[25]="_";
int vida=3,x,i,pontos=0;

printf("\n\nDigite a palavra secreta:\n\n");
gets(palavra);
system("cls");

for(i=0;i<strlen(palavra);i++)
lacuna[i]='-';
tam_palavra=strlen(palavra);

while(vida>0)
{
x=0;
printf("\n %s \n",lacuna);
printf("\n digite uma letra: ");
gets(letra);

for(i=0;i<strlen(palavra);i++)
{
if(letra[0]==palavra[i])
{
lacuna[i]=palavra[i];
pontos++;
x++;
}
}
if(x==0) {
vida=vida-1;

if(vida==0) {
printf("\n\n VOCE FOI ENFORCADO!");
printf("\n A PALAVRA ERA: %s",palavra);
break;
}

else
printf("\n VOCE ERROU! RESTAM %d VIDA(S)",vida); }

else{
if(pontos==tam_palavra) {
printf("\n\n VOCE GANHOU!");
printf("\n A PALAVRA E: %s",palavra);
break;}

else {
printf("\n VOCE ACERTOU UMA LETRA!");
}
}
} 
printf("\n\n");
system("pause");
return 0; }

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...