0 / 0 / 0
Регистрация: 22.03.2017
Сообщений: 6
1

Сумму положительных элементов одномерного массива, расположенных до максимального элемента

26.03.2017, 14:23. Показов 4173. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите решить задачу.
Сумму положительных элементов массива, расположенных до максимального элемента.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.03.2017, 14:23
Ответы с готовыми решениями:

Сумму положительных элементов одномерного массива, расположенных до максимального элемента(с подробным объяснением)
Помогите пожалуйста! С подробным объяснением если можно... Зарание большое при большое спасибо!!!

Найти сумму положительных элементов, расположенных после максимального элемента
помогите

Вычислить сумму целых частей элементов массива, расположенных до первого максимального элемента
В одномерном массиве, состоящем из n вещественных элементов, вычислить сумму целых частей элементов...

В одномерном массиве размера 10 найти сумму элементов расположенных до максимального элемента массива
В одномерном массиве размера 10 найти сумму элементов расположенных до максимального элемента...

2
907 / 664 / 318
Регистрация: 23.10.2016
Сообщений: 1,543
26.03.2017, 14:29 2
Лучший ответ Сообщение было отмечено vitprok как решение

Решение

C#
1
2
3
4
5
6
7
8
9
    int[] array = { 1, -2, 3, -4, 5, 3, 4, -1, 1 };
    int max = array.Max();
    
    int sum = array
        .TakeWhile(e => e != max)
        .Where(e => e > 0)
        .Sum();
        
    Console.WriteLine(sum);
0
529 / 1009 / 35
Регистрация: 08.01.2017
Сообщений: 5,584
26.03.2017, 18:16 3
если без LINQ:
C#
1
2
3
4
5
6
7
8
9
10
11
12
            int[] array = { 1, -2, 3, -4, 5, 3, 4, -1, 1 };
            int sum = 0, indexMax =0, max = array[0]; ;
            for (int i = 0; i < array.Length; i++)
                if (array[i] > max)
                {
                    max = array[i];
                    indexMax = i;
                }           
            for (int i =0; i < indexMax; i++)
                if (array[i] > 0) sum += array[i];
            Console.WriteLine(sum);
            Console.ReadKey(true);
Добавлено через 30 минут
Или за один цикл:
Кликните здесь для просмотра всего текста
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
            int [] array = { 1, -2, 3, -4, 5, 3, 4, -1, 1 };
            int [] sum = new int[array.Length];
            int indexMax = 0, max = array[0]; ;
            for (int i = 1; i < array.Length; i++)
            {
                sum[i] = (sum[i - 1]) + ((array[i - 1] > 0) ? array[i - 1] : 0);
                if (array[i] > max)
                {
                    max = array[i];
                    indexMax = i;
                }
            }           
            Console.WriteLine(sum [indexMax - 1]);
            Console.ReadKey(true);
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.03.2017, 18:16
Помогаю со студенческими работами здесь

Массив. Нужно вычислить сумму элементов массива, расположенных после первого максимального по модулю элемента, а потом его сжать
В одномерном массиве, состоящем из n вещественных элементов, вычислить сумму элементов массива,...

Вычислить произведение элементов массива, расположенных после максимального по модулю элемента
Помогите в одномерном массиве, состоящем из n вещественных элементов, вычислить: - количество...

Вычислить количество элементов массива, лежащих в диапазоне от А до В и сумму расположенных после максимального
Нужно написать код пол условию: В одномерном массиве, состоящем из n вещественных чисел,...

Найти сумму всех положительных элементов произвольного одномерного массива
Найти сумму всех положительных элементов произвольного одномерного массива.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru