Followers 0

# Guessing Game Problem

## 13 posts in this topic

[color=#000000][font=verdana, arial, helvetica, sans-serif][size=3]Hello, I tried making a guess my number game, but inverted, by having the user input a number and the computer trying to guess it.[/size][/font][/color]
[color=#000000][font=verdana, arial, helvetica, sans-serif][size=3]Here is the source code.[/size][/font][/color]

[code]
//Guess my Number (inverted)
//The computer will guess your number
#include <iosteam>
#include <cstdlib>
#include <ctime>
using namespace std;
int main ()
{
int myNumber,;
char yorn;
cout <<"Enter a number between 1 and 10: ";
cin >> myNumber;
cout <<"\nYou chose "<<myNumber <<" as your number."

do
{
srand(time(0));
int theNumber = rand() % 10 + 1;
cout <<"Is your number "<<theNumber<<"? (y/n)";
cin >> yorn;
} while (yorn == y);
cout <<"I won !";
return 0;
}
[/code]

[color=#000000][font=verdana, arial, helvetica, sans-serif][size=3]DevC++ says there is a problem in this part.[/size][/font][/color]

[color=#000000][font=verdana, arial, helvetica, sans-serif][size=3]cout <<"Enter a number between 1 and 10: ";[/size][/font][/color]

Thanks
0

##### Share on other sites
What's the exact error message? It might not mean anything to you, but it probably means something to more experienced programmers, and we can help you understand it.

EDIT: What does your compiler think of [font=monospace]"<[/font]iosteam>" [sic]? You should generally only look at the first error message.
1

##### Share on other sites
Why is there a comma after int mynumber? Also your loop will only run if the guess is right on the first shot. Shouldn't it be while yorn != y
1

##### Share on other sites
Problem looks like it is here:
[code]int myNumber,;[/code]
Should not have a comma unless you are declaring multiple ints on that line.

You are also missing a semi-colon on this line:
[code]
cout <<"\nYou chose "<<myNumber <<"as your number."
[/code]

Also you should use an up-to-date IDE like MS Visual Studio Express or CodeBlocks.
1

##### Share on other sites
[quote name='alvaro' timestamp='1334255435' post='4930635']
What's the exact error message? It might not mean anything to you, but it probably means something to more experienced programmers, and we can help you understand it.

EDIT: What does your compiler think of [font=monospace]"<[/font]iosteam>" [sic]? You should generally only look at the first error message.
[/quote]
It displays a lot of messages, but I believe its this one...
"iosteam: No such file or directory. "
0

##### Share on other sites
[quote name='GarciaBackhoff' timestamp='1334257001' post='4930641']
[quote name='alvaro' timestamp='1334255435' post='4930635']
What's the exact error message? It might not mean anything to you, but it probably means something to more experienced programmers, and we can help you understand it.

EDIT: What does your compiler think of [font=monospace]"<[/font]iosteam>" [sic]? You should generally only look at the first error message.
[/quote]
It displays a lot of messages, but I believe its this one...
"iosteam: No such file or directory. "
[/quote]

it should be:
#include <iost[b]r[/b]eam>

also, move the srand to before the do .... while loop (you only want to call it once)
1

##### Share on other sites
you need <iostream> not <iosteam>... also remove the above mentioned syntax error and you can adjust the loop according to how you want it.

EDIT** Just too slow! HAHA
0

##### Share on other sites
Still giving me problems, here is what I have changed.

[code]
//Guess my Number (inverted)
//The computer will guess your number
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main ()
{
int myNumber;
char yorn;
cout <<"Enter a number between 1 and 10: ";
cin >> myNumber;
cout <<"\nYou chose "<<myNumber <<" as your number.";
srand(time(0));
do
{
int theNumber = rand() % 10 + 1;
cout <<"Is your number "<<theNumber<<"? (y/n)";
cin >> yorn;
} while (yorn != y);
cout <<"I won !";
return 0;
}[/code]
0

##### Share on other sites
y is undefined. What you probably meant is 'y', which is the character y instead of the variable y.

Line: 20
1

##### Share on other sites
Also keep in mind if you do (yorn != 'y') that will only check against the character y which is different from the character Y. If you want both you'd have to do ((yorn != 'y') || (yorn !='Y'))

|| is an or operator which will allow it to check both possiblities
1

##### Share on other sites
Ok changed everything you have stated, but it still marks something wrong with the <iostream>.

[code]//Guess my Number (inverted)
//The computer will guess your number
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main ()
{
int myNumber;
char yorn;
cout <<"Enter a number between 1 and 10: ";
cin >> myNumber;
cout <<"\nYou chose "<<myNumber <<" as your number.";

srand(time(0));
do
{
int theNumber = rand() % 10 + 1;
cout <<"Is your number "<<theNumber<<"? (y/n)";
cin >> yorn;
} while ((yorn != 'y') || (yorn !='Y'));
cout <<"I won !";
return 0;
}
[/code]

This is what it marks.

C:\Users\Guillermo\Desktop\C++\Learning\test.c|4|error: iostream: No such file or directory|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|5|error: cstdlib: No such file or directory|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|6|error: ctime: No such file or directory|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|8|error: expected '=', ',', ';', 'asm' or '__attribute__' before 'namespace'|
C:\Users\Guillermo\Desktop\C++\Learning\test.c||In function 'main':|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|16|error: 'cout' undeclared (first use in this function)|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|16|error: (Each undeclared identifier is reported only once|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|16|error: for each function it appears in.)|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|17|error: 'cin' undeclared (first use in this function)|
||=== Build finished: 8 errors, 0 warnings ===|
0

##### Share on other sites
Change the file to test.cpp (or test.cc). I would guess that the IDE is seeing the .c extension and attempting to use gcc (C compiler) instead of g++ (C++ compiler). The code you are trying is only valid C++.
0

##### Share on other sites
[quote name='GarciaBackhoff' timestamp='1334259224' post='4930653']
Ok changed everything you have stated, but it still marks something wrong with the <iostream>.

[code]//Guess my Number (inverted)
//The computer will guess your number
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main ()
{
int myNumber;
char yorn;
cout <<"Enter a number between 1 and 10: ";
cin >> myNumber;
cout <<"\nYou chose "<<myNumber <<" as your number.";

srand(time(0));
do
{
int theNumber = rand() % 10 + 1;
cout <<"Is your number "<<theNumber<<"? (y/n)";
cin >> yorn;
} while ((yorn != 'y') || (yorn !='Y'));
cout <<"I won !";
return 0;
}
[/code]

This is what it marks.

C:\Users\Guillermo\Desktop\C++\Learning\test.c|4|error: iostream: No such file or directory|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|5|error: cstdlib: No such file or directory|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|6|error: ctime: No such file or directory|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|8|error: expected '=', ',', ';', 'asm' or '__attribute__' before 'namespace'|
C:\Users\Guillermo\Desktop\C++\Learning\test.c||In function 'main':|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|16|error: 'cout' undeclared (first use in this function)|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|16|error: (Each undeclared identifier is reported only once|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|16|error: for each function it appears in.)|
C:\Users\Guillermo\Desktop\C++\Learning\test.c|17|error: 'cin' undeclared (first use in this function)|
||=== Build finished: 8 errors, 0 warnings ===|
[/quote]

Oh, you're using Dev C++, its old as **** and doens't actually compile standard C++ code.

try changing your includes to #include <iostream.h> <stdlib.h> and <time.h> (it might also work to rename the file test.cpp and not change any code if Dev C++ is better than i remembered).

Alternativly you could get a modern compiler.
0

##### Share on other sites
WORKED!
changed to codeblocks and changed extension.
Thanks guys
0

## Create an account

Register a new account