smiley probleem vreemd !?

Status
Niet open voor verdere reacties.

Biirra

Gebruiker
Lid geworden
25 dec 2009
Berichten
26
[CPP]// hangman showt in functions
// classic game of hangman

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
#include <ctime>
#include <cctype>

using namespace std;

char playerGuess();

const int MAX_WRONG = 8;// maximale fouten

vector<string> words;
int wrong = 0;
string used = " ";
char guess;

int main(char guess)
{


words.push_back("HANGMAN");
words.push_back("GUESS");
words.push_back("DIFFICULT");

srand(time(0));
random_shuffle(words.begin(),words.end());
const string THE_WORD = words[0];
string soFar(THE_WORD.size(), '-');


cout << "Welcome to hangman. Good Luck!\n";

//main loop

while ((wrong < MAX_WRONG) && (soFar != THE_WORD))
{

cout << "\nYou have " << (MAX_WRONG - wrong) << " incorrect guesses left.\n";
cout << "\nYou've used the following letters:\n" << used << endl;
cout << "\nSo far, the word is:\n" << soFar << endl;

playerGuess();


if (THE_WORD.find(guess) != string::npos)
{
cout << "That's right! " << guess << "is in the word.\n";

// update soFar om nieuwe letter toe te voegen.
for(int i = 0; i < THE_WORD.length(); ++i)
if(THE_WORD == guess)
soFar = guess;
}
else
{
cout << "Sorry, " << guess << "isn't in the word.\n";
++wrong;
}
}
//afsluiten
if (wrong == MAX_WRONG)
cout << "\nYou've been hanged!";
else
cout << "\nYou guessed it!";

cout << "\nThe word whas " << THE_WORD << endl;

return 0;
}


char playerGuess() // vraagt player vor een gok.
{

cout << "\n\nEnter your guess: ";
cin >> guess;
guess = toupper(guess);// maakt hoofdletter omdat het woord erin is gespelt


while(used.find(guess) != string::npos)
{
cout << "\nYou've alredy guessed " << guess << endl;
cout << "enter your guess: ";
cin >> guess;
guess = toupper(guess);
}

used += guess;
return guess;
}[/CPP]

als je dit programmatje start komt er een smiley in voor, kan iemand me vertellen wat dat dingetje daar doet en hoe die er komt enzo :S ? ik snap er niks van namelijk.

verder werkt spel wel maar dat smiley is heel vaag.
 
Waar zie jij dan die smiley? Ik zie hem niet als ik het programma start:
frank@darkstar:~$ ./hangman
Welcome to hangman. Good Luck!

You have 8 incorrect guesses left.

You've used the following letters:


So far, the word is:
---------


Enter your guess:


Ik kreeg wel deze fouten bij het compileren:
hangman.cpp:22: error: first argument of 'int main(char)' should be 'int'
hangman.cpp:22: error: 'int main(char)' takes only zero or two arguments
hangman.cpp: In function 'int main(char)':
hangman.cpp:55: warning: comparison between signed and unsigned integer expressions

[cpp]int main(char guess)[/cpp]
Dit kan en mag niet. Je moet of [cpp]int main()[/cpp] of (als je parameters wilt kunnen meegeven) [cpp]int main(int argc, char *argv[])[/cpp] gebuiken.

De waarschuwing mag je negeren, maar als je hem wilt oplossen moet je [cpp]for(int i = 0; i < THE_WORD.length(); ++i)[/cpp] vervangen door [cpp]for(unsigned int i = 0; i < THE_WORD.length(); ++i)[/cpp]
 
Laatst bewerkt:
Waar zie jij dan die smiley? Ik zie hem niet als ik het programma start:



Ik kreeg wel deze fouten bij het compileren:


[cpp]int main(char guess)[/cpp]
Dit kan en mag niet. Je moet of [cpp]int main()[/cpp] of (als je parameters wilt kunnen meegeven) [cpp]int main(int argc, char *argv[])[/cpp] gebuiken.

De waarschuwing mag je negeren, maar als je hem wilt oplossen moet je [cpp]for(int i = 0; i < THE_WORD.length(); ++i)[/cpp] vervangen door [cpp]for(unsigned int i = 0; i < THE_WORD.length(); ++i)[/cpp]


hmm.... ik krijg nie die compile errors, nog geen waarschuwing van een foutje, gebruik je dev c++ ? btw zodra je een letter invuld krijg ik die smiley, ik zal is kijken of ik een screensht kan poste.
 
heej je hat gelijk :p

[CPP]int main(char guess)[/CPP]

was fout :p moes gewoon int main zijn, van de anderre error krijg ik geen melding en ook geen zichtbare fout in het spel. maar tog bedankt :p vond smile beetje raar

:thumb:
 
Ook als ik een letter invul krijg ik geen smiley te zien.
Enter your guess: a
That's right! Ais in the word.

You have 8 incorrect guesses left.

You've used the following letters:
A

So far, the word is:
-A---A-


Enter your guess: q
Sorry, Qisn't in the word.

You have 7 incorrect guesses left.

You've used the following letters:
AQ

So far, the word is:
-A---A-


Enter your guess:

Als compiler gebruik ik GCC (in Linux).
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan