.grades file
  containing grade information for a single student in a single course
  and print the weighted average grade to standard output.
  The following documents exist describing Gradeful.
    
Letting \(c\) denote a category, \(a \in c\) denote an assignment in category \(c\), \(|c|\) denote the number of assignments in category \(c\), \(w_c\) denote the weight for category \(c\), and \(g_a\) denote the grade on assignment \(a\), the weighted average final grade, \(f\), is defined as:
\[f = \frac{\sum_c \left( w_c \frac{\sum_{a \in c} g_a }{|c|} \right)}{\sum_c w_c}\]Remember that the documents describing the file format and command-line parameters assume a "well-behaved" user. You must account for the fact that an attacker may be able to provide command-line parameters and/or a file to Gradeful.
Remember that the documents describing the file format and command-line parameters assume a "well-behaved" user. You must account for the fact that an attacker may be able to provide command-line parameters and/or a file to Gradeful.
rules.pdf.
  
  
  For Part 2, you must submit your implementation using Canvas.
  It must be in a single file named 
  gradeful.zip. The .zip file must contain
  the following.
  
.c and .h
          files, if necessary).makefile that 
         can be used to build the executable on a "normal" Linux platform 
         using the GNU Compiler Collection..grades files you used for testing
          your implementation.readme.txt that explains how
          to execute the program from the command-line.In other words, it must contain everything that anyone would need to build and run Gradeful.
Copyright 2016