Произведение элементов массива Java
Друзья, снова нужна ваша помощь.
Подскажите пожалуйста, почему мой код не работает?
Нужно создать массив, заполнить случайными числами от 1 до 10 и найти произведение всех этих чисел.
public static void main(String[] args) {
int[] array = new int[10];
for (int i = 0; i < array.length; i++) {
array[i] = 1+ (int) (Math.random() * 11);
}
long p = array[0] * array[1] * array[2] * array[3] * array[4] * array[5] * array[6] * array[7] * array[8] * array[9];
System.out.println(p);
}
}
Ответы (1 шт):
Автор решения: Igor
→ Ссылка
int p = 0; // !!! Не торопитесь. Подумайте.
...
p = p * array[i];
Вы доводите счетчик внешего цикла i до array.length во внутреннем цикле. Зачем тут вложенные циклы?
public static void main(String[] args) {
int[] array = new int[10];
int p = 1;
for (int i = 0; i < array.length; i++) {
array[i] = (int) (Math.random() * 10);
p = p * array[i];
}
System.out.println(p);
}