1answer.
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
frez [133]
3 years ago
11

Create a class called Hangman. In this class, Create the following private variables: char word[40], progress[40], int word_leng

th. word will be used to store the current word progress will be a dash representation of the the current word. It will be the same length as the current word. If word is set to ‘apple’, then progress should be "‑‑‑‑‑" at the beginning of the game. As the user guesses letters, progress will be updated with the correct guesses. For example, if the user guesses ‘p’ then progress will look like "‑pp‑‑" Create a private function void clear_progress(int length). This function will set progress to contain all dashes of length length. If this function is called as clear_progress(10), this will set progress to "‑‑‑‑‑‑‑‑‑‑". Remember that progress is a character array; don’t forget your null terminator. Create the following protected data members: int matches, char last_guess, string chars_guessed, int wrong_guesses, int remaining. Create a public function void initialize(string start). This function will initialize chars_guessed to a blank string, wrong_guesses to 0. Set remaining to 6. Use strcpy() to set word to the starting word passed as start (You can use start.c_str() to convert it to a character array). Set word_length to the length of word. Call clear_progress in this function.
Computers and Technology
1 answer:
PSYCHO15rus [73]3 years ago
7 0

Answer:

See explaination

Explanation:

#include <cstring>

#include <cstdio>

#include <string>

#include <array>

#include <random>

#include <algorithm>

struct RandomGenerator {

RandomGenerator(const size_t min, const size_t max) : dist(min, max) {}

std::random_device rd;

std::uniform_int_distribution<size_t> dist;

unsigned operator()() { return dist(rd); }

};

struct Gallow {

void Draw() const

{

std::printf(" ________\n"

"| |\n"

"| %c %c\n"

"| %c%c%c\n"

"| %c %c\n"

"|\n"

"|\n", body[0], body[1], body[2], body[3],

body[4], body[5], body[6]);

}

bool Increment()

{

switch (++errors) {

case 6: body[6] = '\\'; break;

case 5: body[5] = '/'; break;

case 4: body[4] = '\\'; break;

case 3: body[3] = '|'; break;

case 2: body[2] = '/'; break;

case 1: body[0] = '(', body[1] = ')'; break;

}

return errors < 6;

}

char body[7] { '\0' };

int errors { 0 };

};

struct Game {

void Draw() const

{

#ifdef _WIN32

std::system("cls");

#else

std::system("clear");

#endif

gallow.Draw();

std::for_each(guess.begin(), guess.end(), [](const char c) { std::printf("%c ", c); });

std::putchar('\n');

}

bool Update()

{

std::printf("Enter a letter: ");

const char letter = std::tolower(std::getchar());

while (std::getchar() != '\n') {}

bool found = false;

for (size_t i = 0; i < word.size(); ++i) {

if (word[i] == letter) {

guess[i] = letter;

found = true;

}

}

const auto end_game = [this](const char* msg) {

Draw();

std::puts(msg);

return false;

};

if (not found and not gallow.Increment())

return end_game("#### you lose! ####");

else if (found and word == guess)

return end_game("#### you win! ####");

return true;

}

RandomGenerator rand_gen { 0, words.size() - 1 };

const std::string word { words[rand_gen()] };

std::string guess { std::string().insert(0, word.size(), '_') };

Gallow gallow;

static const std::array<const std::string, 3> words;

};

const std::array<const std::string, 3> Game::words{{"control", "television", "computer"}};

int main()

{

Game game;

do {

game.Draw();

} while (game.Update());

return EXIT_SUCCESS;

}

You might be interested in
whenever I try to make an account it says it can't sign me up at this time or something- can you help?-
Rus_ich [418]

Answer:

You can try emailing tech support and describing your issue. In order to get the best help as quickly as possible, try providing screenshots of what happens when you sign in or describe everything you see on the screen when the problem occurs, and quote error messages directly when possible.

5 0
3 years ago
What is computer science​
adell [148]

Answer:

computer science is the study of computer and computing as well as theoretical and practical applications.

pls give me thanks ☺️☺️

7 0
3 years ago
Assignment
Lena [83]

Answer:

it

is

not

a

big

question

it

is

so

simple

5 0
3 years ago
Inputting a range of numbers comprising a batch and then inputting each serially numbered document is characteristic of the cont
Fynjy0 [20]

Answer:

batch sequence check.

Explanation:

A batch sequence check can be defined as a strategic and systematic control plan which typically involves the process of inputting a range of numbers comprising a batch and then inputting each serially numbered document.

The steps for checking an event data within a batch using a batch sequence check include the following;

I. You'll enter a range of serial numbers of the document in a batch.

II. You'll enter each serially pre-numbered document one after the other.

III. The input documents are sorted by a computer into a serial (numerical) order, match the sequence number range against the input documents, and then reports any part of the document that is missing, a duplicate and out of range.

6 0
3 years ago
______ lets people access their stored data from a device that can access the Internet.
Lelechka [254]

Answer:

Cloud computing and applications

Explanation:

6 0
3 years ago
Other questions:
  • Playville is a tiny town in fictional middle earth, which is inhabited by dwarves and elves. Playville has a playground to which
    6·1 answer
  • Which of the following jobs are most likely to be in greater demand due to the increasing prevalence of mobile computing? deskto
    13·1 answer
  • These systems consist of interlinked knowledge resources, databases, human experts, and artificial knowledge agents that collect
    9·1 answer
  • Plagiarism occurs when writers
    14·2 answers
  • Plis is a unit test !!!!!!! HelP ASAP only 30 mins left, will mark as brainliest
    8·1 answer
  • Write a statement that outputs variable numObjects. End with a newline.
    6·1 answer
  • Which of the following keywords is used to remove a row in a table? (Points : 2) DROP
    11·1 answer
  • PLEASE HELP WITH MY COMPUTER
    8·2 answers
  • PLZZ HELP
    11·1 answer
  • What is an operating system that controls some aspects of the computer?
    10·2 answers
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!