$25+
CSCI/CMPE 1370
Homework #3
Hand in:
Turn in a printout of your source code along with a printout of sample runs showing that your program works.
HiLo Guessing Game
This assignment utilizes:
- random numbers
- loops
- conditional statements
- basic input/output
Write a program to play the Hi-Lo guessing game! In particular, your program should:
· Generate a random number from 1 to 100.
· Ask the user to guess the number
· If the user is right, the game ends
· If the user's guess is too high or too low, the program informs the user of that fact and asks for another guess.
· This repeats until the user gets the number correct.
Further, your program should keep track of how many guesses the user takes to get the number right. An appropriate insult/compliment should then be issued to the user. For example:
11 or more "What a terrible score!..."
9-10 "Not too shabby, but not too good either...
7-8 "That's pretty good but you can do better..."
5-6 "That's a very good score..."
0-4 "Amazing! Or was it luck?"
Here is a sample run:
Let’s play a Number Guessing Game!
Guess a number between 1 and 100
40
Too low!!
Guess a number between 1 and 100
90
Too high!!
Guess a number between 1 and 100
60
Too high!!
Guess a number between 1 and 100
50
Too low!!
Guess a number between 1 and 100
55
Too low!!
Guess a number between 1 and 100
56
You win!!
It took you 6 guesses.
That's a very good score...
Some Help (random numbers): To generate a random number from 1-10 in c++, do the following:
First, “seed” the random number generator. To do this, add #include <ctime to the top of your program, and add the following command:
srand(time(0));
Now use “rand()” to generate “pseudo random numbers”. Each call to rand() will generate a giant random number. Take the result and get the remainder of this giant number modulus 10 using ‘rand() % 10’. The remainder of any number when divided by 10 will be a number from 0 to 9. Take the result and add 1 to it to get a number from 1-10:
srand(time(0));
int x1 = rand() % 10 + 1; //will be something like 4
int x2 = rand() % 10 + 1; //will be something like 1
int x3 = rand() % 10 + 1; //will be something like 6
Extra Credit 1 (10 extra points)
(This is easy, you might as well do it!)
Make the following improvements to your program:
· Instead of always guessing from 1-100, ask the user to input the range of numbers to guess between.
· Before playing, request some personal information about the user. Then, during the game, have the program spew random comments at the user based on this information.
· Make your program do something cool other than what is already listed.
Extra Credit 2 (50 extra points)
· Write a second version of the Hi-Lo game, except that instead of the user guessing the number, the computer tries to guess a number the user is thinking of. That is, the computer makes a guess, and the user tells the program if the guess is too high or too low.
· To get points for this version, your program should always guess the number within, say, 10 guesses.