Вывод индекса полученного целочисленного значения в массиве Java
Сам только начинаю писать на Java, просьба не пинать. Простая задачка, имеется толпа учеников, им ставят оценки (я вывожу случайные от 1 до 90). Необходимо найти наивысшую оценку, но на печать вывести её номер, а не значение. С первой частью справился, оценку нашёл, как найти её номер (индекс)?
public static void main(String[] args) {
int marks[] = new int[5]; //массив, количество учеников
for (int i = 0; i < 5; i++) {
marks[i] = (int) (Math.random() * 90 + 1); //присваивание оценок
}
int maxMark = marks[0]; // присваивание максимального значения оценки
for (int i = 0; i < marks.length; i++) { //цикл поиска максимального значения
if (maxMark < marks[i])
maxMark = marks[i];
}
System.out.println(maxMark); //Вывод максимальной оценки
}
Ответы (1 шт):
Автор решения: SmellyNS
→ Ссылка
public static void main(String[] args) {
int marks[] = new int[5]; //массив, количество учеников
for (int i = 0; i < 5; i++) {
marks[i] = (int) (Math.random() * 90 + 1); //присваивание оценок
}
int maxMarkIndex = 0;
int maxMark = marks[0]; // присваивание максимального значения оценки
for (int i = 0; i < marks.length; i++) { //цикл поиска максимального значения
if (maxMark < marks[i]){
maxMark = marks[i];
maxMarkIndex = i;
}
}
System.out.println(maxMark); //Вывод максимальной оценки
System.out.println(maxMarkIndex); //Вывод индекса максимальной оценки
}
}
Или же вас интересует конкретный метод для нахождения индекса по значению?
marks.indexOf(maxMark) (Если честно, не уверен, что это работает с массивом int)