1
for (int i = 0; i < 15; i+=3) {
System.out.print("Enter Exam Mark:");
Marks[i] = input.nextInt();
System.out.print("Enter Coursework Mark:");
Marks[i+1] = input.nextInt();
System.out.print("Enter Weighting:");
Marks[i+2] = input.nextInt();
}
public double[] computemarks(int[] Marks) {
double[] marks = new double[6];
double computedmark;
for (int x = 0; x < 15; x+=3) {
if (Marks[x] >= 35 && Marks[x+1] >= 35) {
computedmark = ((Marks[x+1] * Marks[x+2]) + (Marks[x] * (100.0 - Marks[x+2])))/100.0;
} else {
computedmark = Math.min(Marks[x], Marks[x+1]);
}
marks[x] = computedmark;
}
return marks;
}
Почему «ArrayIndexOutOfBoundsException» отображается во время выполнения? Я играл с петлями, но он все еще не работает.ArrayIndexOutOfBoundsException Ошибка Отображение
FYI, массив Marks имеет 18 доступных слотов в памяти.
О, теперь я вижу. Есть ли способ исправить это без установки меток на 18 слотов? –
Да, просто добавьте дополнительный индекс, который будет умножен на цикл – Stanislav
Не совсем уверен, что вы имеете в виду. Не могли бы вы предоставить мне пример? –