Hangman brauche dringend hilfe
-
hallo,
liebe Forum mitglieder
ich brauche dringend eure Hilfe wir sollten einen Hangman Programmieren was uns auch gelungen ist, nun sollen wir aber alles mit Funktionen manchen.
wenn mir jemand helfen kann und ein paar Tipps hätte wäre ich sehr dankbar
:Hier das Programm
//---------------------------------------------------------------------------#include <iostream>
#include <conio>
using namespace std;//---------------------------------------------------------------------------
char spieler_eins[30],spieler_zwei[30],wort[20],buchstabe,raten[20],fehl_buch[7],nochmal;
int suchlauf,fehler,definiert,anz_buch,richtig,edurch,nv;
int main(int argc, char* argv[])
{
cout<<"Hangman (C) 2007 by 6players"<<endl<<endl;
cout<<"Spieler eins bitte geben Sie Ihren Namen ein:";
cin>>spieler_eins;
cout<<"Spieler zwei bitte geben Sie Ihren Namen ein:";
cin>>spieler_zwei;cout<<endl<<""<<spieler_eins<<" bitte das zu erratene Wort eingeben (Maximal 20 Zeichen)."<<endl;
cin>>wort; //Eingabe des Wortes, das von Spieler2 erraten werden soll//Beginn der Umwandlung des Wortes in Unterstriche und Festlegung der Anzahl der Buchstaben
for(int i=0;i<=20;i=i+1)
{
if(wort[i]==0) //Wenn das Ende des Arrays "wort" erreicht wurde
{
anz_buch=i; //Festlegung aller Vorhandenen Buchstaben,
//damit später überprüft werden kann ob Spieler2 gewinnt
i=20;
}
else //Wenn das Array "wort" noch Zeichen enthält
{
if(raten[i]==0) //Verzweigung zum speichern der Unterstriche
// für alle vorhandenen Buchstaben
{
raten[i]='_';
}
}
} //Ende Umwandlungfor(int i=0;i<=30;i=i+1) //Beginn Hauptprozess
{
clrscr(); //Alle sichtbaren Elemente werden gelöscht
suchlauf=0; //Suchlauf wird auf 0 gesetztcout<<""<<spieler_zwei<<" muss das Wort erraten!"<<endl<<endl;
for(int ausgabe=0;ausgabe<=20;ausgabe=ausgabe+1) //for-Schleife zum Ausgeben der bisher
//erratenen Buchstaben und der Unterstriche als Platzhalter
{
cout<<""<<raten[ausgabe]<<" ";
}cout<<endl<<endl;
//Ausgaben der entsprechenden Hangmans:
if(fehler==1)
{
cout<<"------------|"<<endl;
cout<<"| /"<<endl;
cout<<"|/"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;}
if(fehler==2)
{
cout<<"------------"<<endl;
cout<<"| / |"<<endl;
cout<<"|/ ---"<<endl;
cout<<"| |. .|"<<endl;
cout<<"| | * |"<<endl;
cout<<"| | v |"<<endl;
cout<<"| ---"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;}
if(fehler==3)
{cout<<"------------"<<endl;
cout<<"| / |"<<endl;
cout<<"|/ ---"<<endl;
cout<<"| |. .|"<<endl;
cout<<"| | * |"<<endl;
cout<<"| | v |"<<endl;
cout<<"| ---"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;
}
if(fehler==4)
{
cout<<" ------------"<<endl;
cout<<"| / |"<<endl;
cout<<"|/ ---"<<endl;
cout<<"| |. .|"<<endl;
cout<<"| | * |"<<endl;
cout<<"| | v |"<<endl;
cout<<"| ---"<<endl;
cout<<"| |"<<endl;
cout<<"| \---|"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;}
if(fehler==5)
{
cout<<" ------------"<<endl;
cout<<"| / |"<<endl;
cout<<"|/ ---"<<endl;
cout<<"| |. .|"<<endl;
cout<<"| | * |"<<endl;
cout<<"| | - |"<<endl;
cout<<"| ---"<<endl;
cout<<"| |"<<endl;
cout<<"| \---|---/"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;
cout<<"|"<<endl;
}
if(fehler==6)
{
cout<<" ------------"<<endl;
cout<<"| / |"<<endl;
cout<<"|/ ---"<<endl;
cout<<"| |. .|"<<endl;
cout<<"| | * |"<<endl;
cout<<"| | o | "<<endl;
cout<<"| ---"<<endl;
cout<<"| |"<<endl;
cout<<"| \---|---/"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"| / "<<endl;
cout<<"| / "<<endl;
cout<<"| / "<<endl;
cout<<"|"<<endl;
}
if(fehler==7)
{
cout<<" ------------"<<endl;
cout<<"| / |"<<endl;
cout<<"|/ ---"<<endl;
cout<<"| |. .|"<<endl;
cout<<"| | * |"<<endl;
cout<<"| | o | Dying..."<<endl;
cout<<"| ---"<<endl;
cout<<"| |"<<endl;
cout<<"| \---|---/"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"| / \"<<endl;
cout<<"| / \"<<endl;
cout<<"| / \"<<endl;
cout<<"|"<<endl;
}
if(fehler==8)
{cout<<" ------------"<<endl;
cout<<"| / |"<<endl;
cout<<"|/ ---"<<endl;
cout<<"| |x x|"<<endl;
cout<<"| | * |"<<endl;
cout<<"| | x | Dead!"<<endl;
cout<<"| ---"<<endl;
cout<<"| \"<<endl;
cout<<"| \---|---/"<<endl;
cout<<"| |"<<endl;
cout<<"| |"<<endl;
cout<<"| / \"<<endl;
cout<<"| / \"<<endl;
cout<<"| / \"<<endl;
cout<<"|"<<endl;
cout<<" YOU LOOSE "<<endl;cout<<"Schade "<<spieler_zwei<<"!"<<endl;
cout<<""<<spieler_eins<<" hat gewonnen!";
getch();
return 0; //Ende des Programms
}cout<<endl;
for(int fb=0;fb<=8;fb=fb+1) //for-Schleife zur Ausgabe aller
//falsch geratenen Buchstaben
{
cout<<""<<fehl_buch[fb]<<" ";
}cout<<endl<<endl<<endl;
cin>>buchstabe;
for(int a=0;a<=19;a=a+1) //Überprüfungen nach Eingabe eines Buchstabens:
{
if(buchstabe==wort[a]) //wenn der erratene Buchstabe vorkommt:
{
if(buchstabe==raten[a]) //Fall: Schon verwendet
{
cout<<"Buchstabe schon verwendet!"<<endl;
cout<<"Bitte eine Taste druecken um einen anderen";
cout<<"Buchstaben einzugeben.";
getch();
}
else //Falls noch nicht verwendet
{
raten[a]=buchstabe; //Unterstrich wird mit dem
//entsprechenden Buchstaben überschrieben
suchlauf=suchlauf-1; //Suchlauf wird -1 gerechnet,
//damit die Verzweigung zur Aktualisierung der Fehler
//nicht ausgeführt wird
richtig=richtig+1; //Anzahl der richtig erratenen
//Buchstaben wird +1 gerechnet
}if(richtig==anz_buch) //Hat Spieler2 gewonnen?
{
cout<<"Herzlichen Glueckwunsch "<<spieler_zwei<<"!"<<endl;
cout<<"Sie haben gewonnen!";
getch();
return 0;
}
}
else //Kommt der geratene Buchstabe nicht vor?
{
suchlauf=suchlauf+1; //Suchlauf wird um 1 erhöht
if(suchlauf==20) //Wenn 20 mal falsch geraten wurde
{
fehl_buch[a]=buchstabe; //der Buchstabe wird der Liste aller
//falsch geratenen Buchstaben hinzugefügt
fehler=fehler+1; //Anzahl der Fehler werden aktualisiert
if(fehler==8) //Fehler=8? Falls ja, hat Spieler2 verloren
{
cout<<"Schade "<<spieler_zwei<<"!"<<endl;
cout<<""<<spieler_eins<<" hat gewonnen!"<<endl;
cout<<"Das Wort wäre "<<wort<<" gewesen!";
}
}
}
}
} //Ende Hauptprozess
return 0; //Programmende
}
//---------------------------------------------------------------------------
-
Warum machst Du noch einen Thread auf? Hier ist der alte abgeblieben.