Grading Scheme for Project 4.
The project 4 was tested using 7 files. The actual test
files, which are numbered from 1 through 7 are placed
in the course folder in the NEBULA file server.
The graded paper would contain comments in one of
the following forms :
- Fi/Oj or Fi/Ej means 5 points were taken off because
the jth output/error was not produced by the program
for test file i.The most common error was F4/E4, for
erroneously skipping the second line (because of an
error in first line) as in
b ;
= 6;
You will get 5 points for each file 1..6 your program passes.
- Ri means points were taken off due to Reason i. All
the reasons and the points taken for each of them are given below.
- R0 : Compilation Errors. ( -50)
- R1 : Not using constants in for error codes. (-3)
- R2 : Poor Organization of the program ,i.e. doing all the work
in main itself without splitting the code into several
logical functions. (upto -10)
- R3 : Insufficient comments or no comments in symboltable.h .
(upto -5)
- R4 : having extra files or incorrect file names. (-5)
- R5 : Improper interface in SymbolTable.h.Includes changing
the class name, changing the header of search or
insert. (-10)
- R6 : Wrong or insufficient code in SymbolTable constructor. (-2)
- R7 : Inefficient or incorrect resizing ( resizing
every time a variable in inserted )or not making reuse
of the search function. (upto -10)
- R8 : Not using binary search or not maintaining sorted order. (-10)
- R9 : Wrong return value from search,returning values other than
0 or 1 . (-5)
- R10 : Program stops after first error. (-10)
- R11 : Accessing out of bounds in the search/insert functions.
This happens if your table size is N , and you try
to consecutively insert N+1 entries. Your program will not work for
test file 7. Declaring the symbol table big enough to
get around this problem is also considered as error. (-5)
- R12 : Using global variables (-10)
- R13 : Main structure of the program itself is wrong (-5)
- R14 : Wrong header for getOperand function. It is considered
an error to use global variables or having getOperand
to return the variable name itself,without searching
for its value. (upto -10)
- R15 : The program did not take care of control-D. (-2)
- R16 : The order of output does not conform to the problem specifications.
Your program is supposed to output the result of each
assignment as soon as it is over. You should not simply
process all the statements and finally print the contents
of the symbol table. (-5)
- Apart from this, if you have any errors specific to your
project, they are written directly in your printout.
Jayendran Srinivasan
May 12, 1997.