Хотите улучшить этот вопрос? Обновите вопрос так, чтобы он вписывался в тематику Stack Overflow на русском.
Закрыт 1 год назад.
Задание: В каждой 4 строке посчитать произведение положительных. Если строк меньше 4, взять по умолчанию строчку содержащую элементы 1,2,3,4,5. А если нет положительных, то произведение считать нулевым и взять сумму по всем строкам.
int[][] numbers = new int[4][];
numbers[0] = new int[] { 3, 2 };
numbers[1] = new int[] { 1, 2, 3 };
numbers[2] = new int[] { 1, 2, 3, 4, 5 };
numbers[3] = new int[] { 1, 1, 3, 3, 2 };
Примерно код должен быть похож, но я не знаю как проверить есть ли в строчке данные элементы 1,2,3,4,5 и как подсчитать сумму по всем строка, если условие не подойдет.
int[] result = (numbers.Select(x => Array.IndexOf(numbers, x) % 4 == 0
? numbers.Sum(z => z.Count(y => y > 0)) == numbers.Sum(z => z.Count())
? numbers.Sum(z => z.Count(y => y > 0)) : -1 : -1 ))
.Where(x => x != -1)
.ToArray();
Кажется, что-то такое:
numbers
.Where((x, i) => i % 4 == 3)
.DefaultIfEmpty(numbers.Where(a => Enumerable.Range(1, 5).All(x => a.Contains(x))).FirstOrDefault())
.Select(a => a?.Aggregate(1, (x, y) => x * y) ?? numbers.Sum(a => a.Sum()))
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Так должен выглядеть ответ в сторону Zabbix со сбором данныхУ меня есть Key