Guest User

Untitled

a guest
Apr 19th, 2018
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.50 KB | None | 0 0
  1. #include <iostream>
  2.     using namespace std;
  3.  
  4. // Build our Hangman depending on how many bad guesses we've had so far.
  5. void drawHangMan(int x)
  6. {
  7.     switch(x)
  8.     {
  9.         case 0:
  10.             cout << "-----------" << endl;
  11.             cout << endl;
  12.             cout << endl;
  13.             cout << endl;
  14.             cout << endl;
  15.             break;
  16.         case 1:
  17.             cout << "-----------" << endl;
  18.             cout << "   O" << endl;
  19.             cout << endl;
  20.             cout << endl;
  21.             cout << endl;
  22.             break;
  23.         case 2:
  24.             cout << "-----------" << endl;
  25.             cout << "   O" << endl;
  26.             cout << "   |" << endl;
  27.             cout << endl;
  28.             cout << endl;
  29.             break; 
  30.         case 3:
  31.             cout << "-----------" << endl;
  32.             cout << "   O" << endl;
  33.             cout << "  -|" << endl;
  34.             cout << endl;
  35.             cout << endl;
  36.             break; 
  37.         case 4:
  38.             cout << "-----------" << endl;
  39.             cout << "   O" << endl;
  40.             cout << "  -|-" << endl;
  41.             cout << endl;
  42.             cout << endl;
  43.             break; 
  44.         case 5:
  45.             cout << "-----------" << endl;
  46.             cout << "   O" << endl;
  47.             cout << "  -|-" << endl;
  48.             cout << "  /" << endl;
  49.             cout << endl;
  50.             break;
  51.         case 6:
  52.             cout << "-----------" << endl;
  53.             cout << "   O" << endl;
  54.             cout << "  -|-" << endl;
  55.             cout << "  / \\" << endl;
  56.             cout << endl;
  57.             break; 
  58.     }
  59. }
  60.  
  61. // Check to see if our guess is a letter in the word.
  62. bool checkLetter(char x, string y)
  63. {
  64.     for (int i=0; i<y.length(); i++)
  65.     {
  66.         if (*y.substr(i,1).c_str() == x) return true;
  67.     }
  68.     return false;
  69. }
  70.    
  71.    
  72. int main()
  73. {
  74.     string gameWord; // Save our game's word.
  75.     int badCount = 0;
  76.     char badLetters[26];
  77.     cout << "Please enter the word you would like to play with: ";
  78.     cin >> gameWord;
  79.    
  80.     while (badCount < 7)
  81.     {
  82.         system("clear"); // Clear the screen (Linux)
  83.         drawHangMan(badCount); // Draw our hangman depending on how many bad guesses we've had.
  84.    
  85.         cout << "Previous bad guesses: ";
  86.         for (int i=0;i<badCount;i++) cout << badLetters[i];
  87.         cout << endl;
  88.        
  89.         char guessLetter; // Guess a letter.
  90.         string guessInput;
  91.         cout << "Please enter a letter or word you would like to guess: ";
  92.         cin >> guessInput;
  93.        
  94.         // The user is only guessing one letter right now.
  95.         if (guessInput.length() == 1)
  96.         {
  97.             guessLetter = *guessInput.c_str();
  98.            
  99.             if (!checkLetter(guessLetter, gameWord))
  100.             {
  101.                 badLetters[badCount] = guessLetter;
  102.                 badCount++; // Our guess was wrong!
  103.             }
  104.         }
  105.        
  106.         // The user is guessing the word.
  107.         else
  108.         {
  109.             if (guessInput == gameWord)
  110.             {
  111.                 cout << "You won!" << endl;
  112.                 return 0;
  113.             }
  114.             else badCount++;
  115.         }
  116.     }
  117.     cout << "\n You lose!" << endl;
  118.     return 0;
  119. }
Add Comment
Please, Sign In to add comment