CIS105 Fall 2003 Project 2

Grading is according to coversheet on p. 114 of lab manual.

IMPORTANT

Name your .c file according to the following scheme: proj2_userid.c
For example, my userid is pconrad, so my file would be proj2_pconrad.c.

Point values will be awarded according to the Project Coversheet on p. 114 of your lab manual.

There will be a 10 point deduction if you do not hand in both a .c file (with the proper naming convention) and a .txt file. Name your .txt file proj2.txt.

Instructions

Write a program that can produce your full first and last name in capital letters, according to the methods presented in lab12.

Each letter should have its own function to draw that letter.

Where feasible, you should use functions to draw "common" parts of letters, following the example from lab12. As an example, consider the writeCurvedTop() and writeCurvedBottom() functions that were used to draw the common parts of the letters C and S. Another example might be common part of the letters B, P and R. Your program should demonstrate at least one example of this technique (of course, it will depend on your particular first and last name; ask your TA if you have questions.)

The program should present the user with a menu of options: enter F for first name, L for last name, and B for both. There should be error checking to make sure the user enters one of those options. For the A grade: If the user enters B, the program should ask another question: does the user want the first name placed on top of the last name, e.g.

PHILL
CONRAD
or beside it, e.g.
PHILL CONRAD
To skip the A grade part, just do the "beside" always, and skip the "on top" part.

The program should produce a differently named data file depending on the output desired. For example, first.dat, last.dat, firstLastOnTop.dat or firstLastBeside.dat. You should also produce a gnuplot file that can be used to generate a .png file that matches (e.g. first.gnuplot, first.png, etc.). Note that the xrange and yrange in the gnuplot file will depend on where you place the various letters.

To submit: the proj2_userid.c file, a script file showing a listing, compile, an a run of all four possible outcomes. Also, place the resulting .png files in your ~/public_html/cis105 subdirectory, and make them available for browsing.


Phillip T Conrad
Last modified: Fri Nov 21 17:06:23 EST 2003