My grade calculator with special weighting
A couple of minor things:


fog and ing aren't very meaningful id names, they would be better as something like formal_grades and informal_grades instead.
This part of the code: 


var is_formal = document.getElementById('formal_radio').checked;    
var gradelist = null;

if (is_formal) {
    new_grade = document.getElementById("new_grade_input").value;
    if (document.getElementById('radio_old_grade').checked) {
        old_grade = document.getElementById("old_grade_input").value;
        formal_grades[formal_grades.indexOf(old_grade)] = new_grade
    } else {
        formal_grades.push(new_grade);
    }
} else {
    new_grade = document.getElementById("new_grade_input").value;
    if (document.getElementById('radio_old_grade').checked) {
        old_grade = document.getElementById("old_grade_input").value;
        informal_grades[informal_grades.indexOf(old_grade)] = new_grade
    } else {
        informal_grades.push(new_grade);
    }
}


repeats very similar code where the only difference is which array is used. Also, gradelist isn't used anywhere. You can avoid the repetition like this:

var is_formal = document.getElementById('formal_radio').checked;
var gradelist = is_formal ? formal_grades : informal_grades;

new_grade = document.getElementById("new_grade_input").value;
if (document.getElementById('radio_old_grade').checked) {
    old_grade = document.getElementById("old_grade_input").value;
    gradelist[gradelist.indexOf(old_grade)] = new_grade
} else {
    gradelist.push(new_grade);
}


by assigning the array that needs to be used to gradelist. 

This works because when you assign an array (or any object) to a variable in javascript, it assigns the reference to the array instead of copying the value. For example, if formal_grades is assigned to gradelist they will both refer to the same array.