public class Solution {
public static void main(String[] args) {
//напишите тут ваш код
Scanner scanner = new Scanner(System.in);
int inputNumberN = scanner.nextInt();
int[] arrayNumber = new int[inputNumberN];
if (inputNumberN > 0){
for(int i = 0; i < inputNumberN; i++){
arrayNumber[i] = scanner.nextInt();
}
}
if (inputNumberN % 2 != 0){
for (int j = 0; j < arrayNumber.length; j++){
System.out.println(arrayNumber[j]);
}
} else {
for (int i = inputNumberN; i >= -1; i--){
System.out.println(arrayNumber[i-1]);
}
}
}
}
Semyon Baryshnikov
30 уровень
Почему после выполнения кода, выводит всё верно, но среда ругается.
Обсуждается
Комментарии (5)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
MasterMarg
10 августа 2023, 10:16
Потому что это не среда, а четверг)
0
Samvel
8 августа 2023, 11:41
inputNumberN это я так понимаю количество элеметов которые будут загонятся в массив. Это у тебя нормально сделано. А дальше нужно обьявить вертуальнную вне циклов перременную присвоить ей какое небудь значение из уже существующих в массиве и в цикле при сравнении его со всеми элементами при небходимости перезаписывать его на новое значение, Затем вне цикла принт получившегося значения...
0
Semyon Baryshnikov QA Automation Engineer
8 августа 2023, 12:52
Спасибо!
0
hidden #3303140
8 августа 2023, 14:35
Что такое "виртуальная переменная", зачем сравнивать значения между собой, если мы тут не ищем максимум или минимум?
У автора ошибка выполнения, потому что он выходит за пределы массива. А за пределы массива он выходит потому, что у него неправильно написаны условия в цикле вывода.
Во-первых, нафиг писать такое условие в цикле, после которого нужно внутри цикла делать i-1 ещё? Почему это сразу не предусмотреть в условии цикла?
Во-вторых, почему i >= -1? Когда у тебя i равно минус одному, да ты ещё вдобавок ещё минус один делаешь, ты пытаешься обратиться к элементу с индексом минус два. Индексы в массиве с нуля начинаются.
Убери -1 отсюда: arrayNumber[i-1], оставь i, и напиши правильно условия в цикле.
У тебя в любом массиве индексы начинаются с нуля и заканчиваются array.length -1. Тебе надо вывести их в обратном порядке, то есть надо начать с последнего (i = array.length - 1) и закончить первым (i = 0) включительно.
0
Semyon Baryshnikov QA Automation Engineer
8 августа 2023, 18:23
Спасибо
0