Create a type of story game by implementing two dynamic stacks that hold words. The first stack will hold nouns and the second stack will hold verbs. Then we will use the words to fill in the blanks of a story we have already created. Your story (create your own story) must be at least 2 sentences long and it must have at least 8 blanks. You will pull either a noun or a verb from the appropriate stack as needed for your story. This is built on the idea of AdLIbs...sort of - just have some fun.
Create a looping menu-driven program to demonstrate your code so that the user has the choice of:
Two levels of validation are required: high-level in main (while loop to control user input) and low-level in the mutators which will cause an exit_failure if the strings they receive are not valid.
Push: Words cannot be blank and they cannot be longer than 10 letters.
Pop - validate for stack not being empty.
Concatenate - validate for at least two words on the stack.
Add an S - validate for stack not empty.
Make a Story - validate that there are enough words on the stack to fill in all your blanks. If not then notify user and do not display the story.
Make sure main() is properly organized into functions and don't forget to document your code including your class. You must implement with two dynamic stacks. 0 points for not using dynamic stacks or for using any C++ STL. Code that does not have two separate stacks (noun and verb) will receive 0 points.