У меня есть два массива для проекта, который имитирует тест на множественный выбор ученика. Первый массив является 20 правильных ответов на тест:Сравнение двух массивов
(правильные ответы) правильно [] имеет эти цифры в нем:
1,4,3,3,2,2,1,1,4,5,3,3,3,5,2,4,2,5,4,5
(ответы студента) ответы [] имеет эти цифры в нем:
0,3,3,0,2,4,0,1,4,5,0,3,3,1,2,4,2,0,4,5
Если студент выбирает «0», они признают, что не знают ответа, и их оценка остается неизменной. Если они выбирают неправильный ответ, они теряют 0,25 марки, и если они выбирают ответ, то получают 1 знак.
Я пытаюсь понять, как создать цикл, который сравнивает элементы в каждом массиве и дает учащемуся общий класс.
Любая помощь будет высоко оценена.
Edit: Это код, который я попробовал:
двойной totalGrade = 0;
while(i <= 20) {
switch(studentAnswer){
case 0:
break;
case 1:
if(correct[i] == answers[i])
{
totalGrade ++;
}
else {
totalGrade = totalGrade - 0.25;
}
case2:
if(correct[i] == answers[i])
{
totalGrade ++;
}
else {
totalGrade = totalGrade - 0.25;
}
case 3:
if(correct[i] == answers[i])
{
totalGrade ++;
}else {
totalGrade = totalGrade - 0.25;
}
case 4:
if(correct[i] == answers[i])
{
totalGrade ++;
}
else {
totalGrade = totalGrade - 0.25;
}
case 5:
if(correct[i] == answers[i])
{
totalGrade ++;
}else {
totalGrade = totalGrade - 0.25;
}
}
}
Используйте цикл, который идет от 0 до длины массива ответов, то индекс обоих массивов, чтобы получить текущие элементы –