Всем добрый день!
Возможно я не до конца понимаю где моя ошибка и мне помогут понять её.
В данной задачи надо поменять знак на противоположный.
Готовое решение мы уже знаем, с использованием if и 10 строк кода. Я решил сделать это задание через цикл for
Вот моё решение, output точно такой же как и в "готовом решении"
for (int i = 0; i < array.length; i++) {
if(i % 2 == 1) {
array[i] *= -1;
}
}
Почему не пропускает этот код? Ведь по сути он делает тоже самое что if единственное, что прогоняет массив по циклу, вместо того, что бы прогонять каждый элемент массива отдельно, а если у нас будет не 5 значение в массиве, а 100, тоже придётся мануально подгонять каждый if ? Или я что-то упустил.
package com.javarush.task.pro.task05.task0503;
/*
Работаем с элементами массива
*/
public class Solution {
public static int[] array = new int[]{-1, 2, 3, -4, -5};
public static void main(String[] args) {
for (int i = 0; i < array.length; i++) {
if(i%2==0 && i > 0) {
array[i] *= -1;
}
}
System.out.println(array[0]);
System.out.println(array[1]);
System.out.println(array[2]);
System.out.println(array[3]);
System.out.println(array[4]);
}
}