Program for hangman game problem, C/C++ Programming

Assignment Help:

Program for Hangman Problem

  #include

  #include

  #include

  #include

  #include

  static void playGame();

  static void printMistakes(int n);

  static int const MAXGUESS=8;

  static int const MAXLETTER= 'z'-'a'+1;

  static char String[][15]= {"apple", "banana", "cat", "dog", "elephant", "fish", "giraffe", "hippopotamus", "ice cream","jelly", "kangaroo", "lion", "monkey", "noodles", "octopus", "parrot", "queen", "rabbit", "sun", "tree", "umbrella", "van", "window", "x-ray", "yellow", "zebra"};

  enum boolean {false, true};

  void main()

  {

  boolean again;

  char answer;

  clrscr();

  cout<<"\n\n\tThis is the word guessing game called Hangman.";

  cout<<"\n\tThe computer will pick-up a word and you must try to";

  cout<<"\n\tguess the lettrs in the word. If you guess the";

  cout<<"\n\tword with less than"<

  do

  {

  playGame();

  cout<<"\n\nWould you like to play another game?(Y or N)";

  cin>>answer;

  if (answer == 'y'|| answer == 'Y')

  again=true;

  else if (answer == 'n'|| answer == 'N')

  again=false;

  else

  {

  again=false;

  cout<<"\n Your answer\""<

  }

  }

  while (again);

  cout<<"\nThank you for playing Hangman!";

  }

  static void playGame()

  {

  boolean*already;

  char c;

  boolean*display;

  int found;

  int i;

  char inputChar;

  char inputString[15];

  int length;

  int letters;

  int mistakes,score,chanscor;

  boolean playing;

  char word[15];

  mistakes=0;

  score=0;

  randomize();

  strcpy(word,String[(int)(rand()%26)]);

  length= strlen(word);

  display= new boolean[length];

  letters=0;

  for (i=0; i

  {

  c=word[i];

  if ((c>='a')&&(c<='z'))

  {

  display[i]=false;

  letters++;

  }

  else

  display[i]=true;

  }

  cout<<"\n\nI am thinking of a word. ";

  if(letters==1)

  cout<<"the word has one letter.";

  else

  cout<<"the word has"<

  already= new boolean[MAXLETTER];

  for (i=0;i

  already[i]=false;

 

  playing = true;

  while(playing)

  { chanscor=100/(MAXGUESS-mistakes);

  cout<<"\nThe word is:";

  for (i=0; i

  {

  cout<<" ";

  if (display[i])

  cout<

  else

  cout<<"*";

  }

  cout<<"\nWhat is your guess? ";

  if ((MAXGUESS-mistakes) <= 1 )

  cout<<"this is your last guess?";

  else

  cout<<"you have"<<(MAXGUESS-mistakes)<<"guessing remaining.";

  gets(inputString);

  strlwr(inputString);

  if (strlen(inputString)== length)

  {

  if(strcmp(word,inputString)==0)

  {

  cout<<"Yes the word is\""<

  printMistakes(mistakes);

  playing=false;

  }

  else

  {

  cout<<"Sorry, the word is not\""<

  <<"\".";

  mistakes++;

  }

  }

  else if (strlen(inputString)!=1)

  {

  cout<<"Your guess\""<

  }

  else

  {

  inputChar=inputString[0];

  if((inputChar<'a')||(inputChar>'z'))

  {

  cout<<"Your guess\""<

  }

  else if (already[inputChar-'a'])

  {

  cout<<"You have already guessed the following letters:";

  for(i=0; i

 

 cout<<" "<<(char)(i+'a');

  cout<<"\n";

  }

  else

  {

  already[inputChar-'a']= true;

  found=0;

  for (i=0; i

  if (word[i]==inputChar)

  { display[i]= true;

  found++;

  }

  if (found <= 0)

  { cout<<"Sorry, the letter\""<

  mistakes++;

  }

  else

  {

  score=score+chanscor*(MAXGUESS-mistakes);

  cout<<"\n\t Your score now is"<

  if (found==1)

  cout<<"there is one letter\""<

  <<"\"in the word.";

  else

  cout<<"yes there are"<

  playing= false;

 for(i=0; i< length; i++)

 playing=playing || !display[i];

if (!playing)

 {

 cout<<"You found all the letters of the word\""<

printMistakes(mistakes);

}

}

}

}

 if (mistakes>= MAXGUESS)

{

cout<<"the word was\"" << word << "\".";

playing= false;

 }

 }

}

 static void printMistakes(int n)

{

 if (n<= 0)

 cout<<"You did not make any mistake. Excellent!";

 else if (n==1)

  cout<<"you made only one mistake. Great!";

 else

 cout<<"you made only"<

 getch();

}

 


Related Discussions:- Program for hangman game problem

C++ Program Please see where i do mistake, #include #include #include ...

#include #include #include #include #include class Employee { private: char *Name; //Set them as pointers... int IdNumber; char *Department; char *Position; public: voi

Find the internal resistance of the battery, The voltage at the terminals o...

The voltage at the terminals of a battery is 52V when no load is linked and 48.8V when a load taking 80A is connected. Find the internal resistance of the battery. What wou

Merge sort, Write a program in C language to implement Two-Way Merge Sort. ...

Write a program in C language to implement Two-Way Merge Sort. Input the following data to the program. Show all intermediate steps: 84, 83, 78,90,23,123,98,159,8,200

Least cost method, c program to implement least cost method

c program to implement least cost method

Calculate the average assignment grade, 1. The main program must be in a fi...

1. The main program must be in a file called A4.cpp 2. The data must be read in from a data file.  The user must enter the filename.  A sample data file will be provided on Mood

Briefly describe how a linear search algorithm works, Question 1: (a) D...

Question 1: (a) Describe the following objects and condition states: (i) ifstream and ofstream objects (ii) eof(), fail(), bad() and good() functions. (b) Write a C++ pr

Explain the functions strlen ( ), Question 1 Consider you have to find out...

Question 1 Consider you have to find out average marks of 100 students in a class. Write simple program(s) using different iteration statements to accomplish it Question 2 Expla

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd