answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
liubo4ka [24]
2 years ago
15

In this warm up project, you are asked to write a C++ program proj1.cpp that lets the user or the computer play a guessing game.

The computer randomly picks a number in between 1 and 100, and then for each guess the user or computer makes, the computer informs the user whether the guess was too high or too low. The program should start a new guessing game when the correct number is selected to end this run (see the sample run below).
Check this example and see how to use functions srand(), time() and rand() to generate the random number by computer.

Example of generating and using random numbers:

#include
#include // srand and rand functions
#include // time function
using namespace std;

int main()
{
const int C = 10;

int x;
srand(unsigned(time(NULL))); // set different seeds to make sure each run of this program will generate different random numbers
x = ( rand() % C);
cout << x << endl;
x = ( rand() % C ); // generate a random integer between 0 and C-1
cout << x << endl;
return 0;
}
*********************************************

Here is a sample run of the program:

Would you like to (p)lay or watch the (c)omputer play?

p

Enter your guess in between 1 and 100.

45

Sorry, your guess is too low, try again.

Enter your guess in between 1 and 100.

58

Sorry, your guess is too low, try again.

Enter your guess in between 1 and 100.

78

Sorry, your guess is too high, try again.

Enter your guess in between 1 and 100.

67

Sorry, your guess is too low, try again.

Enter your guess in between 1 and 100.

70

Sorry, your guess is too high, try again.

Enter your guess in between 1 and 100.

68

Sorry, your guess is too low, try again.

Enter your guess in between 1 and 100.

69

Congrats, you guessed the correct number, 69.

Would you like to (p)lay or watch the (c)omputer play or (q)uit?

c

The computer's guess is 50.

Sorry, your guess is too high, try again.

The computer's guess is 25.

Sorry, your guess is too high, try again.

The computer's guess is 13.

Sorry, your guess is too low, try again.

The computer's guess is 19.

Sorry, your guess is too high, try again.

The computer's guess is 16.

Sorry, your guess is too low, try again.

The computer's guess is 17.

Congrats, you guessed the correct number, 17.

Would you like to (p)lay or watch the (c)omputer play or (q)uit?

q

Press any key to continue

*****************************************************

So far I was able to create the user input ortion of the program, I need help coding the computer generated guessing game,

if the users input choice of computer at the end or choice of play.. if you could help me build on what I have below greatly appreciate it!!! thank you

code I have got so far:

#include
#include
#include

int main(void) {
srand(time(NULL)); // To not have the same numbers over and over again.

while(true) { // Main loop.
// Initialize and allocate.
int number = rand() % 99 + 2; // System number is stored in here.
int guess; // User guess is stored in here.
int tries = 0; // Number of tries is stored here.
char answer; // User answer to question is stored here.

//std::cout << number << "\n"; // Was used for debug...

while(true) { // Get user number loop.
// Get number.
std::cout << "Enter a number between 1 and 100 (" << 20 - tries << " tries left): ";
std::cin >> guess;
std::cin.ignore();

// Check is tries are taken up.
if(tries >= 20) {
break;
}

// Check number.
if(guess > number) {
std::cout << "Too high! Try again.\n";
} else if(guess < number) {
std::cout << "Too low! Try again.\n";
} else {
break;
}

// If not number, increment tries.
tries++;
}

// Check for tries.
if(tries >= 20) {
std::cout << "You ran out of tries!\n\n";
} else {
// Or, user won.
std::cout<<"Congratulations!! " << std::endl;
std::cout<<"You got the right number in " << tries << " tries!\n";
}

while(true) { // Loop to ask user is he/she would like to play again.
// Get user response.
std::cout << "Would you like to play again (Y/N)? ";
std::cin >> answer;
std::cin.ignore();

// Check if proper response.
if(answer == 'n' || answer == 'N' || answer == 'y' || answer == 'Y') {
break;
} else {
std::cout << "Please enter \'Y\' or \'N\'...\n";
}
}

// Check user's input and run again or exit;
if(answer == 'n' || answer == 'N') {
std::cout << "Thank you for playing!";
break;
} else {
std::cout << "\n\n\n";
}
}

// Safely exit.
std::cout << "\n\nEnter anything to exit. . . ";
std::cin.ignore();
return 0;
}

Computers and Technology
1 answer:
Zepler [3.9K]2 years ago
7 0

Answer:

A C++ program was used for a user or the computer play a guessing game.

Explanation:

The C++ code to this question:

#include <iostream>

#include <cstdlib> // srand and rand functions

#include <ctime> // time function

using namespace std;

int main()

{

const int C = 100;// constant integer with defined value 100

char type;// type of option chosen

cout<<"Would you like to (p)lay or watch the (c)omputer play?"<<endl;

cin>>type;// input of type

do{// for first iteration you can't choose q

int x;

srand(unsigned(time(NULL))); // set different seeds to make sure each run of this program will generate different random numbers

x = ( rand() % C);

x++;// random value between 1 and 100

int check=-1;// make initial check=-1

int ends=C;// for type selected as c, make the initial guess to be chosen from 1 to 100

int start=1;

while(1)

{

if(type=='p')// if selected type is p

{

cout<<"Enter your guess in between 1 and 100."<<endl;

cin>>check;

}

else if(type=='c')// if selected type is c

{

check=start+(rand()%(ends-(start-1)));//get a random number between updated start and ends for computer guessing

cout<<"The computer's guess is "<<(check)<<"."<<endl;

}

else// if type is not equal to c or p or q

{

cout<<"Invalid option chosen"<<endl;

break;

}  

if(check>x)// if the guess is greater

{

cout<<"Sorry, your guess is too high, try again."<<endl;

ends=check-1;// update ends in case type is c

}

else if(check<x)

{

cout<<"Sorry, your guess is too low, try again."<<endl;

start=check+1;// update start

}

else// if right number is selected

{

cout<<"Congrats, you guessed the correct number, "<<x<<"."<<endl;

break;

}

}

cout<<"Would you like to (p)lay or watch the (c)omputer play or (q)uit?"<<endl;

cin>>type;

}while(type!='q');

return 0;

}

Note: Kindly find an attached copy of the screenshot of execution of code below

You might be interested in
Which telecommunications device is widely used in industries that require closed communication?
Stella [2.4K]

The telecommunications device that  is widely used in industries that require closed communication are walkie-talkies. Correct answer: D

Walkie-talkies are hand-held, portable, two-way radio transceivers which enable secure communication between the two points, without being part of a network.

3 0
2 years ago
Read 2 more answers
If byte stuffing is used to transmit Data, what is the byte sequence of the frame (including framing characters)? Format answer
Lerok [7]

Answer:

Correct Answers: 01h 79h 1Bh 78h 78h 1Bh 7Ah 04

Explanation:

Solution is attached below

4 0
2 years ago
A workgroup database is a(n) _____ database
Step2247 [10]
It is a shared database
8 0
2 years ago
Which computer applications can Mr. Crowell use to make the classroom learning more stimulating and interesting? Mr. Crowell has
katovenus [111]

Answer:

He can use following computer program to make the class room more interesting and effective:-

  • 1. <u>Reference software</u> : This software help students to access the atlases and dictionaries.Teacher can include this software in research projects .

  • 2. <u>Educational Games</u>: This types of software is very effective for younger children because it motivates them to learn.This software companies have combined gaming and education into one .

  • 3. <u>Graphical software</u> : Student can use this software to create and changes images available on the internet itselfs .
4 0
2 years ago
Read 2 more answers
Select the correct navigational path to freeze the top row of your worksheet. Select the panes you wish to freeze. Click the tab
Artemon [7]

Yeah, Your steps ar correct. Let's analyse those steps more easily by the following steps:

\Large{ \boxed{ \bf{ \color{aqua}{Freeze \: panes:}}}}

Freeze panes is a feature in spreadsheet applications, such as Microsoft Excel, LibreOffice Calc, and Google Sheets. It "freezes" a row or column, so that it is always displayed, even as you navigate the spreadsheet.

❍ Freezing panes is especially useful if your spreadsheet has a header row, that you want to always be visible.

  • Select the row below the row(s) you want to freeze. In our example, we want to freeze rows 1 and 2, so we'll select row.
  • Click the View tab on the Ribbon.
  • Select the Freeze Panes command, then choose Freeze
  • Panes from the drop-down menu. ...
  • The rows will be frozen in place, as indicated by the gray line.

<u>━━━━━━━━━━━━━━━━━━━━</u>

6 0
2 years ago
Read 2 more answers
Other questions:
  • Carrie works on a help desk and is assigned a ticket that was automatically generated by a server because of an error. The error
    14·2 answers
  • Assume that name has been declared suitably for storing names (like "Misha", "Emily" and "Sofia"). Assume also that stdin is a v
    9·1 answer
  • Alyosha was explaining to a friend the importance of protecting a cryptographic key from cryptoanalysis. He said that the key sh
    10·1 answer
  • Dillard’s wants to learn about its consumers' attitudes toward online purchases. There are numerous studies that are available a
    9·1 answer
  • Thelma is a web developer for a bowling league. She wants visitors to the website to be able to print web pages, such as league
    14·1 answer
  • Look at the following array definition:
    11·1 answer
  • Workspace How do the following technologies help you in your quest to become a digital citizen: kiosks, enterprise computing, na
    6·1 answer
  • given the numerical value 1010101.11, which of the following number systems is most likely represented.
    11·1 answer
  • JAVA...Write a statement that calls the recursive method backwardsAlphabet() with parameter startingLetter.
    9·1 answer
  • Spark is electrical discharge in air, while air is mix of variety of gases what particles conduct electricity in gas
    12·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!