About
The multivariate grade calculator aims to make it easy to evaluate numerous possible combinations in order to achieve a desired grade. The grade thermometer on the right shown in the demo displays the minimum and maximum possible final grade the user will achieve based on what they entered as well as their predicted final score.

The grading policy used in the demo is as follows:

You can try using the multivariate grade calculator here.

The webpage was written completely from scratch with pure HTML, CSS and JavaScript without the use of any libraries or frameworks which regrettably resulted in many sloc. Most of the operations were done using JavaScript's LocalStorage. You may find the source code here.

An initial version was written in python using File I/O, NumPy and Matplotlib. You may find the source code here.

Part 1: Course information

For Part 1 - 3:
Using the same grading policy from the about section, assume that the following scores have been entered already.
Exam: 82%
Programming assignments (PAs): 80%, 84%, 65%, 70%

Under PAs information
Total assessments completed: 4 / 10

Current standing: 299.00 / 400 = 74.75% Final standing: 299.00 / 400 = 29.90% Overall percentage weighting: 40.00% You had the opportunity to earn: 16.00% Secured percentage: 11.96% Permanent loss: 4.04%


Part 2: Overall Grade Analysis

Under Overall Grade Analysis
Percent you had the opportunity to earn: 32.67%

Total secured percent: 25.63% Total percent permanently lost: 7.04% Current progress and percentage: 78.45% Highest possible final score: 92.96%


Grade Thermometer:
MAX how much you can get if you get 100% on rest of work.
MIN how much you can get if you get 0% on the rest of work.


Part 3: Sliders
Case 1:
The first student, Skye, is confident she can average 95% on the rest of the PAs and get full marks on the mini project. However, she is not confident about exams. Skye wants to aim for a B- in the class. Using the sliders, Skye finds that she will have to average 65% on the rest of the exams to earn a B- in the class.


Case 2:
The second student, Yoru, is confident on getting full marks on the rest of the PAs. Yoru is lazy and wants to skip the mini project. He is also aiming for a B- in the class. Yoru finds that he will need to average 92% on the rest of the exams to do so.

Case 3:
The third student, Reyna, is doing pass-fail and just wants a D-. Reyna is confident she will get full marks on the rest of the PAs and the mini project. She has several parties to attend and does not want to study for exams. Reyna finds that she will need to average 2% on the rest of exams to pass the class.

Deletion and Custom Cut-offs
Custom grade cut-offs can be entered as well as shown in the demonstration.

You can delete the following individual values:
If you want to delete several of these, it may be more convenient to just clear everything by using the clear all button.