Computer Science I for non-majors by James Tam

Return to the course web page

CPSC 217: Assignment 4

    Your score Max score

Coding style (marks may be awarded independent of program functionality)

   
  Appropriate use of white space (source code)   2
  Self-documenting variable, constant and function names.   3
  Use of named constants as appropriate   2
  Boolean and mathematical expressions are simple and easy to read   4
  Deals with errors in a helpful and positive manner (repetition/looping notes slide #64 - 65)   2
  Output is neat and presentable   2
  Penalty: Global variables employed   -4
  Penalty: excessive redundancy in code (e.g., cut and paste code instead of a loop)   -4
  Penalty: functions aren't written according to principles taught in lecture (decomposition notes slide #70 - 71)   -4
  Penalty: functions not employed in the assignment, maximum grade point that can be awarded is 1.7 regardless of other style and functionality considerations)    
 

Sub total

 

15

Documentation (marks may be awarded independent of program functionality)

   
  Header documentation contains overall description of program.   1
  Some form of versioning system is demonstrated in the header documentation   1
  Provides a list of the specific program features that were implemented   1
  Lists the program limitations   1
  Each function documented (see decomposition notes slide #71 for details)   3
  Penalty: Name and tutorial section not included at top of program   -4
 

Sub total

 

7

Functionality (only qualify for these marks if the program runs)

   
  Gets the text that is to be encrypted   1
  Prompts for number and direction of shifts   1
  Prompts for option to turn on debugging mode   1
  Displays original text   1
  Displays 'encrypted text' (encryption not necessarily working but the modified text should be some modification of the original text and not hard coded)   2
  Debug mode implemented (encryption may not yet work but ASCII values correct)   6
  Encryption (maximum 12 marks)    
    Max 12 marks for encryption (only one of the four cases below is applicable)    
    1) Can shift forward or backward by one (alphabet wrapping not working): 4 marks    
    2) Can shift forward or backward by one (alphabet wrapping working): 8 marks    
    3) Can shift forward or backward by one or greater (alphabet wrapping not working): 6 marks    
    4) Can shift forward or backward by one or greater (alphabet wrapping working): 12 marks   12
  Ignores the special characters: ! . ? , ' SPACE (half mark each)   3
  Program can detect invalid characters: detection   2
  Program stops the encryption process and terminates execution when invalid characters detected (requires previous feature to be implemented): correct reaction   4
  Program can decrypt text (requires that one of the four encryption cases works)   6
  Sub total   39

OVERALL ASSIGNMENT TOTAL

 

61

Grade Point for assignment

 

4.0

*To get marks for these features your program needs to display these values onscreen

Min raw score Grade point
0 0
10 0.7
12 1
14 1.1
16 1.2
18 1.3
20 1.4
22 1.5
24 1.6
26 1.7
28 1.8
30 1.9
32 2
34 2.1
36 2.2
38 2.3
40 2.4
42 2.5
44 2.6
46 2.7
48 2.8
49 2.9
50 3
51 3.2
52 3.3
53 3.4
54 3.5
55 3.6
56 3.7
57 3.8
58 3.9
59 3.9
60 4