Cartesian

The purpose of this program is to process a sequence of points in a Cartesian coordinate system, and determine, for each point, whether it lies inside or outside of a forbidden region. The program begins by reading in the definition of the forbidden region, which is defined by a sequence of points defining the vertices of a polygon region. For example, the figure below depicts a forbidden region described by 7 points.

REQUIREMENTS

1. You must use as your main module the instructor supplied file “Prog1.cpp” without modification.

2. Your program’s output must appear exactly as shown in the sample run, producing exactly the same output format.

3. Use const definitions to define symbolic constants rather than hard-coding constants into your program. For example specify the array dimensions (size) with a symbolic constant. Then, it is easy to change the sizes of all of the arrays. Do not use #define to name constants.

4. Use descriptive names throughout your program. Strive to make your code so readable that is self-explanatory. If you can’t think of a meaningful name for a variable, constant, parameter, of function, then you don’t really understand your program.

5. Use a consistent indentation scheme to help show the structure of your program.

6. Use the required capitalization convention to distinguish variables from constants. The required convention is that constant names and function names have the first letter of each word capitalized (e.g., MaxSides), and variable names, member names, and parameter names, have the first letter of every word except the first capitalized (e.g.,

thePoint, numSides). Thus, constants and functions always start with a capital letter, and variables and parameters start with lower case.

7. Include a sufficient number of comments to explain your program. See your instructor’s demo programs, which illustrates acceptable comment usage.

8. Do not use goto statements.

9. Do not use global variables. Define all variables inside function definitions.

10. No function definition may be longer than one page (60 lines).

11. Do not use redundant code. If you need the same procedure in more than one place, make it a function.

12. Keep your functions simple. If your program seems overly complex, it probably is. This means that you did not spend enough time designing, before you started typing code. KEEP IT SIMPLE!

13. Eliminate all compiler warning messages.

14. Use C++ style input/output. Do not use C-style input-output functions (stdio) such as printf(), scanf(), getchar(), putchar(), etc.