Instructions: Create a subdirectory named “hw2” in your cs410 directory. Use that subdirectory for your all file submissions on this assignment. At the end of the homework assignment, these two files should be found in your hw2 directory:
a single C++ compilable file containing a program written in C++ named “hw2.cpp”
a “typescript” file demonstating program compilation, execution and testing. Use the commands below at the UNIX prompt to generate the typescript file:
script command to start a typescript.
ls -l to list files in your directory and write date/time cat hw2.cpp to print out solution file
g++ -o hw2 hw2.cpp to compile program
./hw2 to execute program with test input (provided on last page) exit command to end typescript file
Background: After getting the right thickness of his lenses, Hans Moleman decided to become an orthopedist. To clarify, that’s a person who treat issues affecting the bones, muscles, tendons, and ligaments. He seems to have had a history of muscle cramps and pain. Towards this end, he has been doing some of his own home-grown research, writing up results of exquisite and intricate experiments on how muscular-aches occur and are mitigated or treated. For the benefit of the general public, he has published a flow chart on how one might treat or react to bone and muscular issues. His flow chart is shown on the next page. You’ll notice that, as you follow the flow in this chart (this flow chart), you eventually end up with either a recommendation or some kind of medical commentary that might help you out in the near future. Some of it is just simplistic babble, but the user might still find some value in it.
Specifications: You are to write a program that implements this flowchart. Briefly, your program will prompt for and input information about the user (the sick person) and use the responses to lead to one of the “diagnostic messages” Hans has crafted. Of course, you are to do this right. Here are some requirements:
You are to use if and if-else statements for decision branching. You are NOT allowed to use the switch-case statement.
You are NOT to us the goto, the break, or the continue statements. You are to use logic and logically structured code to implement.
Your program should greet the user and prompt for and read in their name (first name only. Assume the name is a contiguous string of non-whitespace characters). Your code should then use that name, in at least one prompt, for info after that and in the final output/diagnosis/recommendation.
Your program should do what we call “input cleansing” or range checking. That is, when you prompt for information that can be validated for value, your code should do that. For example, in many of the prompts you will have, you will ask for a response of yes or no (y/n). If you input the response as a char, you can then check to see if they indeed entered ‘y’ or ‘n’ and re-prompt them if not.
At the end of the execution of a “run” of this stress inquiry, your program should ask the user if they wish to start again – ostensibly for someone else. In any case, the whole line of questioning and diagnosis should repeat until no one else has muscular problems.
When you submit: When you run your program, use the following responses to questions as indicated by the flowchart:
yes, no, no, no, no, no, no, yes
enter a “yes” response to evaluate another problem answer no to all questions
again, enter a “yes” response to evaluate another problem no, yes, no, yes
enter a “no” response to exit the program
As usual, if you have any questions about this assignment, be sure to ask your TAs or instructor.