The problem with the page was that homework grades were recorded as points out of some maximum, but that maximum was not 100. Here is a summary of the homework and the maximum number of points for each:
H1 H2 H3 H4 Assignment 100 50 30 20 Maximum Points
Thus a student who earned a perfect score on H4 would only get 20 points which would be averaged as a grade of 20%.
This problem could be solved by changing the program code so that maximum grade was an input and calculating percentages, and some day I may do that. However, in the interim I've used a different approach: I left the grades as they were, and adjusted the weights for the homeworks to compensate.
Here are the weights that I want to give each homework assignment:
H1 H2 H3 H4 Assignment 100 50 30 20 Maximum Points 2 1 .6 .4 Desired Weight
To give each homework the desired weight and to leave the recorded grade as it is, I used the following formula to develop an Actual Weight for each homework:
Actual Weight = Desired Weight / MaximumPoints * 100
This gives Actual Weights as follows:
H1 H2 H3 H4 Assignment 100 50 30 20 Maximum Points 2 1 .6 .4 Desired Weight 2 2 2 2 Actual WeightIt is these Actual Weights that are included in the spreadsheet.
Now, why does this work. Note that multiplying the desired weight by a percent grade (rather than by points) would involve the following calculation:
DesiredWeight * PerCent Grade = DesiredWeight * (Points / MaximumPoints * 100)
and that we can rearrange and substitute to get the following:
DesiredWeight * PerCent Grade = DesiredWeight * (Points / MaximumPoints * 100) = Points * (DesiredWeight / MaximumPoints * 100) = Points * ActualWeight
Also note that this causes the sum of the Actual Weights to be larger than 100. This compensates for the fact that the maximum number of points is too low.
This technique only works if the program does the following calculation to find a final average:
for each assignment sum += ActualWeight*ActualPoints end for final average = sum / 100
The technique would not work if it divided by the sum of the actual weights, which is 104 in this case.
As a test, I invented a perfect student who earned a perfect score on every assignment. That student's final grade was 100.0. Those grades are listed under perfect:perfect if you care to check them.