Найти произведение элементов массива расположенных между первым и вторым нулевыми элементами - C#
Формулировка задачи:
нужно найти произведение элементов массива расположенных между первым и вторым нулевыми элементами
в результате всегда 1, так как я сначала присвоил proiz=1, то есть ничего не меняется. где ошибка?
хотя, позиции первого и второго нулевых выводит правильно!
for (int I = 0; I < n; I++) { if (Arr[I] == 0) { Console.WriteLine("первый нулевой элемент = " + (I + 1)); per = I+1; break; } } for (int I = per; I < n; I++) { if (Arr[I] == 0) { Console.WriteLine("второй нулевой элемент = " + (I + 1)); I = vtor; break; } } for (int I = per; I < vtor; I++) { proiz = proiz*Arr[I]; }
Решение задачи: «Найти произведение элементов массива расположенных между первым и вторым нулевыми элементами»
textual
Листинг программы
private static long Op(int[] x) { long m = 0; for (int i = 1; m == 0 || x[i] != 0; ++i) if (x[i] != 0) { if (m == 0 && x[i-1] == 0) ++m; m *= x[i]; } return m; }