Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.90
Алён4uk
12 / 12 / 3
Регистрация: 03.04.2011
Сообщений: 75
#1

Вычислить сумму элементов массива, расположенных между максимальным и минимальным элементом - C++

14.09.2011, 09:42. Просмотров 2789. Ответов 3
Метки нет (Все метки)

вычислить сумму элементов,расположенных между максимальным и минимальным элементом (первыми по порядку, если их нескглько) Если вычислить сумму не удается, выдать сообщерие с указанием причины.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.09.2011, 09:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вычислить сумму элементов массива, расположенных между максимальным и минимальным элементом (C++):

Подсчитать сумму элементов, расположенных между максимальным и минимальным элементом массива - C++
1)Подсчитать сумму элементов, расположенных между максимальным и минимальным элементами (минимальный и максимальный элементы в массиве...

Вычислить сумму отрицательных элементов массива и произведение элементов, расположенных между максимальным и минимальным элементами - C++
Помогите пожалуйста в одномерном массиве, состоящих из вещественных элементов вычислить: 1)сумму отрицательных элементов массива ...

Найти количество нулей среди элементов массива, расположенных между минимальным и максимальным элементом массива. - C++
Программу по нахождению количества нулевых элементов в массиве составила а как сделать так чтобы они находились именно между макс. и мин....

Найти сумму элементов массива, расположенных между минимальным и максимальным элементами - C++
дан вещественный массив A(n). найти сумму элементов массива, расположенных между минимальным и максимальным элементами.

Вычислить произведение элементов массива, расположенных между максимальным и минимальным элементами - C++
#include <conio.h> using namespace std; int main() { setlocale(LC_ALL, "RUS"); const int N=15; int i; double mas,...

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

3
Aneron
158 / 157 / 12
Регистрация: 20.04.2010
Сообщений: 570
14.09.2011, 09:50 #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
double array[128];
for(int i = 0; i < 128; ++i)
array[i] = rand();
int max_index = 0,min_index = 0;
for(int i = 0; i < 128; ++i)
{
if(array[i] > array[max_index])
max_index = i;
else
if(array[i] < array[min_index])
min_index= i;
}
double sum = 0;
int z = 0;//Переменная,которая будет считать сколько чисел добавлено.
for(int i = (min(min_index,max_index) + 1) ;i<(max(min_index,max_index) - 1);++i)
{
sum += array[i];
++z;
}
if(z == 0)
printf("No elements");
else
printf("Result - %f",sum);
1
DanilAREFY
19 / 19 / 2
Регистрация: 12.04.2011
Сообщений: 35
14.09.2011, 10:34 #3
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
//В одномерном массиве, сотоящем из n вещественных элементов, вычислить:
//1) сумму положительных элементов массива;
//2) произведение элементов массива, расположенных между максимальным по модулю
//и минимальным по модулю элементами.
// Упорядочить элементы массива по убыванию.
#include <iostream>
#include <conio.h>
#include <cstdlib>
#include <ctime>
#include <algorithm>
 
using namespace std;
 
int main()
{
    setlocale (LC_ALL,"");
    int N, nomax=0, nomin=0;
    float sum=0, max=0, min=0, pro=1, b=0;
    cout << "Введите количество элементов массива:";
    cin >> N;
    float * A = new float [N];
    for (int i = 0; i < N; i++) //ввод массива
    {
        cin >> A[i];
    }
    for (int i = 0; i < N; i++) //ищем сумму положительных элементов
    {
        if (A[i] > 0)
        {
            sum += A[i];
        }
    }
    max=abs(A[0]); //берем за максимум 0-й элемент массива 
    min=abs(A[0]); //берем за минимум 0-й элемент массива
    for (int i = 1; i < N; i++) 
    {
        if (abs (A[i]) > max) //ищем номер максимального элемента массива
        {
            max = abs (A[i]);
            nomax = i;
        }
        if (abs (A[i]) < min) //ищем номер минимального элемента массива
        {
            min = abs (A[i]);
            nomin = i;
        }
    }
    if (nomin < nomax && nomin != nomax && nomax != nomin-1 && nomax != nomin+1) //произведение элементов массива при условии, что min левее max, исключая рядомстоящие
    {
        for (int i = nomin+1; i < nomax; i++) 
        {
            pro*=A[i];
        }
        cout << endl;
        cout << "Произведение равно:" << pro << endl;
    }
    if (nomin > nomax && nomin != nomax && nomax != nomin-1 && nomax != nomin+1) //произведение элементов массива при условии, что min правее max, исключая рядомстоящие
    {
        for (int i = nomax+1; i < nomin; i++)
        {
            pro*=A[i];
        }
        cout << "Произведение равно:" << pro << endl;
    }
    if (nomin == nomax || nomax == nomin-1 || nomax == nomin+1) //произведение элементов массива при условии, что min = max
    {
        cout << "Произведение равно:" << 0 << endl;
    }
    cout << "Сумма положительных элементов:" << sum << endl << endl;
    for (int i = 0; i < N; i++) //сортировка массива по убыванию пузырьком
    {
        for (int j = 0; j < N-i-1; j++)
        {
            if (A[j] < A [j+1])
            {
                float buf = A[j];
                A[j] = A[j+1];
                A[j+1] = buf;
            }
        }
    }
    cout << "Отсортированный по убыванию массив:" << endl;
    for (int i = 0; i < N; i++) //вывод отсортированного массива по убыванию
    {
        cout << A[i] << endl;
    }
    cout << endl;
    system ("pause");
    return 0;
    delete [] A; //очищаем выделенную память
}
Впринципе принцип один и тотже, только нужно поменять произведение на сумму, ну и убрать ненужное
1
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,545
Завершенные тесты: 3
14.09.2011, 13:12 #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include <iostream>
#include <vector>
#include <iterator>
#include <algorithm>
#include <numeric>
 
int main()
{
     std::vector<int> vec((std::istream_iterator<int>(std::cin)), std::istream_iterator<int>());
     if (vec.size() <= 2)
     {
        std::cerr << "Too few elements in array" << std::endl;
        return 1;
     }
     std::vector<int>::iterator min = std::min_element(vec.begin(), vec.end());
     std::vector<int>::iterator max = std::max_element(vec.begin(), vec.end());
     if (*min == *max)
     {
         std::cerr << "Min and max are equal" << std::endl;
         return 1;
     }
     bool flg = min < max;
     int sum = std::accumulate(flg ? min + 1 : max + 1, flg ? max : min, 0);
     std::cout << "Sum is: " << sum << std::endl;
}
1
14.09.2011, 13:12
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.09.2011, 13:12
Привет! Вот еще темы с ответами:

Вычислить произведение элементов массива расположенных между максимальным и минимальным элементами - C++
Произведение элементов массива расположенных между максимальным и минимальным элементами. П.5. 18.Правил Запрещено размещать задания и...

Вычислить произведение элементов массива, расположенных между максимальным и минимальным элементами - C++
Здравствуйте! Помогите найти ошибку. если можно, исправьте пожалуйста. Ошибка в цикле. Задание: В одномерном массиве, состоящем из n...

Вычислить произведение элементов массива, расположенных между максимальным и минимальным элементами - C++
#include &quot;stdafx.h&quot; #include &lt;conio.h&gt; const int N=4; int main() { int mas={1, 2,3,4,}; bool flag1=0, flag2=0, flag3=0; ...

Найти сумму элементов массива, расположенных между элементами с минимальным и максимальным значением - C++
Одномерный массив. Число элементов массива задаётся пользователем. Элементы могут заполняться как вручную, так и случайным образом.Найти...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru