Saint Louis University |
Computer Science 180
|
Dept. of Math & Computer Science |
The table below gives the assignments, and associated dates. All future dates are tentative until such assignments are made available.
Program | Topic | Date | Collaboration Policy |
---|---|---|---|
prog01 | CreditCard | Wednesday, 31 January 2007, 8pm | pair |
prog02 | CarDealer | Thursday, 8 February 2007, 8pm | individual(*) |
prog03 | Fancy Vector | Wednesday, 21 February 2007, 8pm | individual |
prog04 | Text Editor | Monday, 5 March 2007, 8pm | pair |
prog05 | Cards | Wednesday, 4 April 2007, 8pm |
individual |
prog06 | Magic Squares | Tuesday, 17 April 2007, 8pm | pair |
prog07 | Birthdays | Thursday, 26 April 2007, 8pm | individual |
For each assignment, you must submit all source code files which you have created or modified. For many assignments, we will have provided you with a number of files containing source code which need not be modified. In such cases, there is no need for you to re-submit these files; we have them already.
You are required to submit a text file titled "readme" with every program you submit. Please do not submit any formatted files such as those produced by Microsoft Word or other word processors. It will be read at the time your program is graded, so it allows you to give helpful information.
The content of the file should generally include
Your name
A brief (i.e. one or two paragraph) overview of your program and any interesting design decisions which you made.
A clear citation of any help you received on this program from other (approved!) sources, as detailed in the policy on Academic Integrity.
Many of our program assignments explicitly require the inclusion of additional, specific information in this file. Please read the individual program assignments carefully.
Finally, you may include any other discussion which you feel will be helpful when grading your assignment. For example, if there are known bugs or problems with your program, you might briefly discuss them here.
For some of the programming assignments, you will be asked to submit an additional file "inputfile" which provides test input for the program. In these cases, we will run all of the students' programs on all of the students' test inputs. Your goal will be to have your test input fool as many students as possible while having your program work correctly on as many of the other test inputs as possible.
In such cases, please make sure that your input files conform strictly to the expected format standards when the program driver is run using your file as input. Again, such input files must be submitted as a plain unformatted text file (for instance one created with "Notepad" on a Windows system). Do not submit any formatted files such as those produced by Microsoft Word or other word processors.
The execution of a program is generally started on the command line by typing the name of the executable (e.g. MyProgram). In this case, the program begins running and can further query the user for any additional information which might be needed. However, tere is an alternate approach which is quite common.
The same executable can be provided additional arguments at runtime by including them on the command line, separated by spaces. These are often called either runtime arguments or command-line arguments. For example, you might start the MyProgram executable with the command:
MyProgram alpha beta gammaIn this case, the main routine of the executable MyProgram will be run, with signature as follows
int main(int argc, char* argv[])where argv is an array of C-style strings which represent the arguments specified on the command line, and argc is the number of such arguments. Please note that the name of the executable is the first such argument, so the example above would result in main being invoked with argc=4 and argv representing the four strings