.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