Найти максимальный элемент в массиве из сгенерированных чисел
Данная статья написана командой Vertex Academy. Это одна из статей из нашего "Самоучителя по Java."
Условие задачи:
Создайте массив из 12 случайных целых чисел из отрезка [-15;15]. Определите какой элемент является в этом массиве максимальным и сообщите индекс его последнего вхождения в массив.
Решение:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
public class Test { public static void main(String[] args) { int [] mas = new int[12]; int maxNumber = -16; int maxIndex = 0; for (int i = 0; i < mas.length; i++) { mas[i] = (int)(Math.random()*31)-15; if(maxNumber <= mas[i]){ maxNumber = mas[i]; maxIndex = i; } } System.out.println("Индекс максимального элемента: " + maxIndex); } } |
Комментарии к задаче:
Создаем целочисленный массив на 12 элементов
1 |
int [] mas = new int[12]; |
Создаем переменную, которая будет хранить максимальное значение в массиве. Исходя из диапазона, минимально сгенерированное число, может быть - 15. Поэтому кладем в переменную число на 1 меньше минимального, то есть -16.
1 |
int maxNumber = -16; |
Создаем переменную, которая будет хранить индекс последнего вхождения максимального элемента:
1 |
int maxIndex = 0; |
Далее пишем цикл, который сначала генерирует новый элемент массива, а потом смотрит, не максимальный ли он:
1 2 3 4 5 6 7 |
for (int i = 0; i < mas.length; i++) { mas[i] = (int)(Math.random()*31)-15; if(maxNumber <= mas[i]){ maxNumber = mas[i]; maxIndex = i; } } |
Как видите, в цикле мы генерируем число в диапазоне от -15 до 15 включительно. Как это сделать, смотрите в статье "Генерация случайных чисел в Java"
Если сгенерированное число больше или равно максимальному, то обновить максимальное число и его индекс:
1 2 3 4 |
if(maxNumber <= mas[i]){ maxNumber = mas[i]; maxIndex = i; } |
И далее выводим индекс последнего вхождения максимального элемента в консоль
1 |
System.out.println("Индекс максимального элемента: " + maxIndex); |