12: guess.cpp) Irite a program that plays a guessing game with the user. The user should pick a letter, and the computer should try to guess the letter. After each guess, the user should tell the computer whether its guess was too high or too low. With this information, the computer should be able to guess the letter within five tries. The user should be able to give whole words or single upper or lower case letters as responses.

Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
icon
Related questions
Question

Please use C++ and only use libraries <iostream> and <cmath>. Also ultilize cin.ignore to let responses be recognized with a Y or Yes.  Code in second pic needs to be included. Thank you!

guess.cpp
char start, end, guess;
start='a';
end='z';
guess=(start+end)/2;
Ilwhile guess is not correct
Iltoo early or too late?
lladjust end points accordingly
Ilmake new guess
/the while loop quits when the guess
Ilis correct -- the computer wins!
Since the while loop repeats when the guess is not correct, it will quit when the guess is
right. You will know if the program is written correctly if the computer can always guess
the user's letter within five quesses. Be sure to test the program with 'a' and 'z'
Transcribed Image Text:guess.cpp char start, end, guess; start='a'; end='z'; guess=(start+end)/2; Ilwhile guess is not correct Iltoo early or too late? lladjust end points accordingly Ilmake new guess /the while loop quits when the guess Ilis correct -- the computer wins! Since the while loop repeats when the guess is not correct, it will quit when the guess is right. You will know if the program is written correctly if the computer can always guess the user's letter within five quesses. Be sure to test the program with 'a' and 'z'
12: guess.cpp) Write a program that plays a guessing
game with the user. The user should pick a letter, and the
computer should try to guess the letter. After each guess,
the user should tell the computer whether its guess was too
high or too low. With this information, the computer should
be able to guess the letter within five tries. The user should
be able to give whole words or single upper or lower case
letters as responses.
Transcribed Image Text:12: guess.cpp) Write a program that plays a guessing game with the user. The user should pick a letter, and the computer should try to guess the letter. After each guess, the user should tell the computer whether its guess was too high or too low. With this information, the computer should be able to guess the letter within five tries. The user should be able to give whole words or single upper or lower case letters as responses.
Expert Solution
Step 1

The variables are declared to hold the starting letter, 'a', ending letter, 'z', and the guessed letter.

    char start, end, guess;
    start = 'a';
    end = 'z';

 

Other variables are declared to hold user input for the actual letter, if the guessed letter is correct or not, how far is the letter, and the number of attempts of the computer, respectively.

   char input;

   char result, distance;

   int tries;

 

Step 2

The c++ code for the given scenario is as follows.

 

PROGRAM

 

#include <stdio.h>
#include <iostream>
#include <cmath>

using namespace std;

int main()
{
    //variables to hold starting, ending and computer-guessed letter
    char start, end, guess;
    start = 'a';
    end = 'z';
    
    //variable to hold user input
    char input;
    
    //variable to hold number of tries
    int tries = 0;
    
    
    std::cout << "Enter a character: ";
    cin >> input;

    //loop continues till computer fails and attemps all 5 tries
    while(tries<5)
    {
        guess = (start+end)/2;

        std::cout << "The letter is " << guess << ". Is the guess correct (y for yes/ n for no)?" << std::endl;
        char result;
        cin >> result;

        if(result == 'n')
        {
            tries++;
            
            if(tries == 5)
                break;
                
            std::cout << "How far is the letter (l for lower than guessed letter/ h for higher)? ";
            char distance;
            cin >> distance;
        
            if(distance == 'l')
                end = guess;
        
            if(distance == 'h')
                start = guess;
        }
        if(result == 'y')
        {
            std::cout << "Congratulations! The computer wins." << std::endl;
            break;
        }
    }
    
    return 0;
}

 

steps

Step by step

Solved in 3 steps with 1 images

Blurred answer
Knowledge Booster
File Input and Output Operations
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
Recommended textbooks for you
Database System Concepts
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education