*****c++ jogo da forca urgente*****

Alguém me pode ajudar no código do jogo da forca?
Please help me...:confused::confused::confused::confused::confused:

Código:
#include<stdio.h>
#include<iostream>
#include<cstdlib>
usingnamespace std;
void teste (char *v, char *c, char *LetraTentativa, int &VetorEspaco, int &b, int &quant)
{
int j,e=0;
for (j=0;j<quant;j++){
if (v[j] == LetraTentativa[0]){
c[j]=v[j];
VetorEspaco++;
}
else
e++;
}
if (e==quant)
b++;
}
void main ()
{ 
char LetraTentativa[1], EntradaPalavras[81],VetorEspaco[81],letras[10];
int erro=0,acerto=0,i=0,j,k,quant, w,f;
cout<<"Digite uma palavra secreta e prima enter para comecar o jogo"<<endl;
gets(EntradaPalavras);
strupr(EntradaPalavras);
quant = strlen (EntradaPalavras);
system ("cls");
cout<<"_________"<<endl<<endl<<endl<<endl;
for (w=0;w<quant;w++){
cout<<"_ ";}
cout<<endl<<"Digite a letra que deseja tentar"<<endl;
for (j=0;j<quant;j++)
VetorEspaco[j] = '_';
for (j=0;j<10;j++)
letras[j] = ' ';
while(erro < 6 && acerto < quant)
{ 
gets(LetraTentativa);
strupr (LetraTentativa);
do
{
j=1;
for (k=0;k<10;k++)
{
if (LetraTentativa[0] == letras[k])
j=0;
}
if (j==0)
{
cout<<"Letra ja digitada, tente novamente";
gets(LetraTentativa);
strupr (LetraTentativa);
} 
}
while (j==0);
letras[i]=LetraTentativa[0];
i++; 
system ("cls");
teste(EntradaPalavras,VetorEspaco,LetraTentativa,acerto,erro, quant);
switch (erro){ 
case 0: cout<<"_________\n\t \n\n\n";break;
case 1: cout<<"_________\n\t O\n\n\n";break;
case 2: cout<<"_________\n\t O\n\t |\n\n";break;
case 3: cout<<"_________\n\t O\n\t/|\n\n";break;
case 4: cout<<"_________\n\t O\n\t/|\\\n\n"; break;
case 5: cout<<"_________\n\t O\n\t/|\\\n\t/ \n";break;
case 6: cout<<"_________\n\t O\n\t/|\\\n\t/ \\\n";break;
}
for (f=0;f<quant;f++)
cout<<VetorEspaco[f]<<" ";
cout<<endl;
cout<<"Certas: "<<acerto<<endl<<"Erradas: "<<erro<<endl;
cout<<"Letras ja tentadas: "<<letras<<endl<<endl;
cout<<"Digite a letra que deseja tentar: ";
}
if (erro == 6)
{
cout<<"GAME OVER!"<<endl;
cout<<"A palavra correcta e:"<<EntradaPalavras;
}
else
cout<<endl<<endl<<"Parabens venceu!"<<endl;
system("PAUSE");
return EXIT_SUCCESS;
}
 
Última edição pelo moderador:
Sugestões:
1) Identa o código, facilitas a quem te vai ajudar, e reparas melhor em alguns potenciais erros de fecho de chavetas no local errado.
2) Que erro te está a dar? Que acontece que não é suposto acontecer? Precisamos de mais detalhes para saber como te ajudar ;)
 
Apenas me dá 1 erro:

- c1010 pergunta-me se eu não me esqueci de adicionar #include <stdafx.h> ao código... Mas ao colocar isto dá-me ainda mais erros.
 
e é suposto adivinhar quais são os erros? posta-os aqui, nao?

um erro rápido é que é using[ESPAÇO]namespace e não tudo junto...

depois dizes que o main não retorna nada, e depois retorna um EXIT_SUCESS... o melhor é meter o main a retornar um int e depois no fim fazes RETURN 0, ou seja, int main() e no fim return 0.

depois de corrigires esses erros o programa já te deve correr
 
Última edição:
pois, não deves usar comandos do sistemas, porque assim ficas dependente...
Só uma coisa. edita lá isso que não se percebe o que está a preto, é preciso passar lá com o rato lol
cumpzz
 
Alguém me pode ajudar no código do jogo da forca?
Please help me...:confused::confused::confused::confused::confused:

Código:
#include<stdio.h>
#include<iostream>
#include<cstdlib>
usingnamespace std;
void teste (char *v, char *c, char *LetraTentativa, int &VetorEspaco, int &b, int &quant)
{
int j,e=0;
for (j=0;j<quant;j++){
if (v[j] == LetraTentativa[0]){
c[j]=v[j];
VetorEspaco++;
}
else
e++;
}
if (e==quant)
b++;
}
void main ()
{ 
char LetraTentativa[1], EntradaPalavras[81],VetorEspaco[81],letras[10];
int erro=0,acerto=0,i=0,j,k,quant, w,f;
cout<<"Digite uma palavra secreta e prima enter para comecar o jogo"<<endl;
gets(EntradaPalavras);
strupr(EntradaPalavras);
quant = strlen (EntradaPalavras);
system ("cls");
cout<<"_________"<<endl<<endl<<endl<<endl;
for (w=0;w<quant;w++){
cout<<"_ ";}
cout<<endl<<"Digite a letra que deseja tentar"<<endl;
for (j=0;j<quant;j++)
VetorEspaco[j] = '_';
for (j=0;j<10;j++)
letras[j] = ' ';
while(erro < 6 && acerto < quant)
{ 
gets(LetraTentativa);
strupr (LetraTentativa);
do
{
j=1;
for (k=0;k<10;k++)
{
if (LetraTentativa[0] == letras[k])
j=0;
}
if (j==0)
{
cout<<"Letra ja digitada, tente novamente";
gets(LetraTentativa);
strupr (LetraTentativa);
} 
}
while (j==0);
letras[i]=LetraTentativa[0];
i++; 
system ("cls");
teste(EntradaPalavras,VetorEspaco,LetraTentativa,acerto,erro, quant);
switch (erro){ 
case 0: cout<<"_________\n\t \n\n\n";break;
case 1: cout<<"_________\n\t O\n\n\n";break;
case 2: cout<<"_________\n\t O\n\t |\n\n";break;
case 3: cout<<"_________\n\t O\n\t/|\n\n";break;
case 4: cout<<"_________\n\t O\n\t/|\\\n\n"; break;
case 5: cout<<"_________\n\t O\n\t/|\\\n\t/ \n";break;
case 6: cout<<"_________\n\t O\n\t/|\\\n\t/ \\\n";break;
}
for (f=0;f<quant;f++)
cout<<VetorEspaco[f]<<" ";
cout<<endl;
cout<<"Certas: "<<acerto<<endl<<"Erradas: "<<erro<<endl;
cout<<"Letras ja tentadas: "<<letras<<endl<<endl;
cout<<"Digite a letra que deseja tentar: ";
}
if (erro == 6)
{
cout<<"GAME OVER!"<<endl;
cout<<"A palavra correcta e:"<<EntradaPalavras;
}
else
cout<<endl<<endl<<"Parabens venceu!"<<endl;
system("PAUSE");
return EXIT_SUCCESS;
}

Primeio: uns espacitos por entre as linhas do código e alguns comentários não faziam mal a ninguém. Facilita muito a compreensão do código para quem te quer ajudar. Usa e abusa dos comentários. Eles existem para alguma coisa é.

Segundo: quais são as dúvidas que tens? Que tipo de erros estás a ter? Indica isso aqui para o pessoal te poder ajudar melhor.

Terceiro: estás a usar o Microsoft Visual Studio? Qual é o editor que estás a usar? Qual a sua versão? Posta aqui toda essa informação importante para te podermos ajudar.

Vá, cumps
 
1) isso de void main() não existe. Em C++ só existe int main() e int main(int, char**)
2) #include <stdafx.h>: isso não existe em C++. Nem em C. É uma muleta que a microsoft decidiu impôr ao pessoal que usava VS. Não passa de mais um cabeçalho que, se bem me lembro, ajuda a usar bibliotecas pré-compiladas de forma a cortar nos tempos de compilação.
3) como já foi dito, a invocação de outros processos não faz qualquer sentido.
 
tipo se não foi ele quem fez o código como é que queria corrigir os erros? vê-se perfeitamente pelos erros que lá tão que ele foi buscar aquilo a net...
 
Back
Topo