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

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();

}

 

Posted Date: 2/28/2013 1:26:19 AM | Location : United States







Related Discussions:- Program for hangman game problem, Assignment Help, Ask Question on Program for hangman game problem, Get Answer, Expert's Help, Program for hangman game problem Discussions

Write discussion on Program for hangman game problem
Your posts are moderated
Related Questions
Ask queCreate an object oriented application with C# that computes the area of a rectangle, and the area and the volume of a cuboid. Based on the inheritance concept, create a bas

A palindrome is a string that reads the same from both the ends. Given a string S convert it to a palindrome by doing character replacement. Your task is to convert S to palindrome

Prepare an Application in C# or C++ Project Description: We are seeking someone who can write a program in C# or C++. The idea is to prepare the program using a Cross Plat

Problem : Change to palindrome A palindrome is a string that reads the same from both the ends. Given a string S convert it to a palindrome by doing character replacement. Your ta

Smugglers are becoming very smart day by day. Now they have developed a new technique of sending their messages from one smuggler to another. In their new technology, they are send

Unlike C++, other programming languages have associative arrays that allow array indices to be strings instead of just integers. You are to create a template class, SVector, that i

Write a program that counts from 0 to 99 and prints these numbers to the terminal ie it prints 00, 01, 02, 03, 04, 05, ....,99. Graphics 1. Write a program in rPeANUt that

for different operation multiple stack

Classify computer system according to capacity. How they are different from computers according to the classification of technology. Provide comparative study also.

How does free know the size of memory to be deleted.? int *i = (int *)malloc(12); followed by free(i); how did free function call know how much of memory to delete? A: It bas