Question: Make a report of the program in which the title is mentioned , abstract which tells explanation of what is happening in program, also give
Make a report of the program in which the title is mentioned , abstract which tells explanation of what is happening in program, also give block diagram which shows flowchart and references if any and also tells the outcome of this program #include
const int MAX_TRIES=5; int letterFill (char, string, string&);
int main () { string name; char letter; int num_of_wrong_guesses=0; string word; string words[] = { "india", "pakistan", "nepal", "malaysia", "philippines", "australia", "iran", "ethiopia", "oman", "indonesia" };
//choose and copy a word from array of words randomly srand(time(NULL)); int n=rand()% 10; word=words[n]; // Initialize the secret word with the * character. string unknown(word.length(),'*');
// welcome the user cout << " Welcome to hangman...Guess a country Name"; cout << " Each letter is represented by a star."; cout << " You have to type only one letter in one try"; cout << " You have " << MAX_TRIES << " tries to try and guess the word."; cout << " ~~~~~~~"; // Loop until the guesses are used up while (num_of_wrong_guesses < MAX_TRIES) { cout << " " << unknown; cout << " Guess a letter: "; cin >> letter; // Fill secret word with letter if the guess is correct, // otherwise increment the number of wrong guesses. if (letterFill(letter, word, unknown)==0) { cout << endl << "Whoops! That letter isn't in there!" << endl; num_of_wrong_guesses++; } else { cout << endl << "You found a letter! Isn't that exciting!" << endl; } // Tell user how many guesses has left. cout << "You have " << MAX_TRIES - num_of_wrong_guesses; cout << " guesses left." << endl; // Check if user guessed the word. if (word==unknown) { cout << word << endl; cout << "Yeah! You got it!"; break; } } if(num_of_wrong_guesses == MAX_TRIES) { cout << " Sorry, you lose...you've been hanged." << endl; cout << "The word was : " << word << endl; } cin.ignore(); cin.get(); return 0; }
/* Take a one character guess and the secret word, and fill in the unfinished guessword. Returns number of characters matched. Also, returns zero if the character is already guessed. */
int letterFill (char guess, string secretword, string &guessword) { int i; int matches=0; int len=secretword.length(); for (i = 0; i< len; i++) { // Did we already match this letter in a previous guess? if (guess == guessword[i]) return 0; // Is the guess in the secret word? if (guess == secretword[i]) { guessword[i] = guess; matches++; } } return matches; }
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
