Lesson 9 Learning construction Step 5
by nathanesa
JavaScript
// Set up array.
studentMarks = [83, 72, 92, 65, 54, 54, 78, 67, 52, 54, 48, 69, 87, 55, 51, 52, 44, 57, 79, 64, 66, 19, 82, 71, 66, 31, 87, 83, 64, 78];
// Declare variables.
var i = 0;
var highMark = 0;
var lowestMark = 100;
var length = studentMarks.length;
// Output and test for highest score achieved.
for (i = 0; i < length; i++) {
document.write('Student ' + i + ', mark out of 100: ' + studentMarks[i] + "<br>");
if (studentMarks[i] > highMark) {
highMark = studentMarks[i];
}
}
document.write('Highest mark is ' + highMark + "<br>"); // Test print of highest mark.
// Test for lowest score achieved.
for (var j = 0; j < length; j++) {
if (studentMarks[j] < lowestMark) {
lowestMark = studentMarks[j];
}
}
document.write('Lowest mark is ' + lowestMark + "<br>"); // Test print of lowest mark.
// Get a, b, c, d and e grades.
var gradeA = [];
var gradeB = [];
var gradeC = [];
var gradeD = [];
var gradeE = [];
for (i = 0; i < length; i++) {
if (studentMarks[i] >= 85) {
gradeA.push(i);
} else if (studentMarks[i] < 85 && studentMarks[i] >= 65) {
gradeB.push(i);
} else if (studentMarks[i] < 65 && studentMarks[i] >= 45) {
gradeC.push(i);
} else if (studentMarks[i] < 45 && studentMarks[i] >= 25) {
gradeD.push(i);
} else if ( studentMarks[i] < 25) {
gradeE.push(i);
}
}
// Output concatenations.
document.write('Number of students tested: ' + length + '<br>');
document.write('Highest possible mark: ' + 100 + '<br>');
document.write('Highest mark achieved: ' + highMark + '<br>');
document.write('Lowest mark achieved: ' + lowestMark + '<br>');
document.write('<br>');
document.write('Grade A student numbers: ' + gradeA + '<br>');
document.write('Grade B student numbers: ' + gradeB + '<br>');
document.write('Grade C student numbers: ' + gradeC + '<br>');
document.write('Grade D student numbers: ' + gradeD + '<br>');
document.write('Grade E student numbers: ' + gradeE +...