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

Вычислить сумму элементов между максимальным и минимальным числом

10.11.2017, 17:19. Показов 1347. Ответов 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
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
92
93
94
//В одномерном массиве из n вещественных элементов:
//1)вычислить сумму отрицательных элементов
//2)вычислить сумму между max и min элементами
//3)отсортировать числа по возрастанию
#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
    const int n = 10; //количество чисел
    int Mas[n] = { 4, -3, 7, 1, 9, 3, -4, 6, 0, -8 };//Обьявление массива
    int sum = 0;
    int max, min, temp,su;  //номера экстремумов и временные переменные
    int a, b, j, i;  //переменные для организации цикла (вычисление суммы элементов между max и min)
 
 
    cout << "\n\n elementi massiva: ";
 
    for (i = 0; i < 10; i++)     //организовали цикл для перебора элементов
    {
        cout << " " << Mas[i];
 
        //вычесление суммы отрицательных элементов
        if (Mas[i] < 0)  //проверка элемента на отрицательность
        {
            sum = sum + Mas[i];   //если элемент отрицательный
            //то увеличивает сумму на значение этого элемента
        }
    }
 
    cout << "\n\n summa otritsatelnix chicel  " << sum << " ";  //вывод суммы отриц чисел
 
    //поиск максимального и минимального числа
    max = Mas[0];
    min = Mas[0];
 
    for (int i = 1; i < n; i++)
    {
        if (max < Mas[i]) max = Mas[i]; //если значение элемента больше значения переменной max, то записываем это значение в переменную
        if (min > Mas[i]) min = Mas[i]; //аналогично и для min
    }
 
 
    cout << "                                                 Minimalnoe chislo: " << min << endl;
 
    cout << "  Maksimalnoe chislo: " << max << endl;
 
    //вычисление суммы элементов между максимальным и минимальным элементом
    if (max > min)
    {
        a = max;
        b = min;
    }
    else
    {
        a = min;
        b = max;
    }
    sum = 0;
    for (i = a + 1; i < b; i++)
    {
        sum =sum+ Mas[i];
    }
 
    //Выводим на экран сумму max и min
    cout << "\n\n summa elementov mezdu  " << a << " i elementa  " << b << "  ravno    " << sum << endl;
 
 
 
    //сортировка массива
    for (i = 1; i < 10; i++)
    {
        temp = Mas[i];
        for (j = i - 1; j >= 0; j--)
        {
            if (Mas[j] < temp)
                break;
 
            Mas[j + 1] = Mas[j];
            Mas[j] = temp;
        }
    }
 
    //вывод результата на экран
    cout << "\n\n otsortirovanie massivi \n\n";
 
    for (i = 0; i < 10; i++) //организовали цикл для перебора элементов
    {
        cout << " " << Mas[i];
    }
 
    _getch();
    return 0;
}
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.11.2017, 17:19
Ответы с готовыми решениями:

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

Вычислить разность между максимальным и минимальным числом
Ребят помогите завтра экзамен , а нужно лабы ещё сдать 6 лаб ((( Вычислить разность между...

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

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

4
1500 / 964 / 811
Регистрация: 30.04.2016
Сообщений: 3,334
10.11.2017, 17:39 2
Ananas_ik, здравствуйте. Это хорошо, что вы нашли максимум и минимум, но вам в переменные a и b нужно не максимум и минимум записывать, а их индексы, то есть позиции в которых они найдены:

C++
1
2
3
4
5
if (A[i] < min) 
{
min = A[i];
num = i; //Находим позицию минимального элемента
}
1
0 / 0 / 0
Регистрация: 10.11.2017
Сообщений: 52
10.11.2017, 17:54  [ТС] 3
Fixer_84, я все равно понять не могу как это все записать, напишите для тупых полностью пожалуйста что нужно исправить
0
1500 / 964 / 811
Регистрация: 30.04.2016
Сообщений: 3,334
10.11.2017, 19:57 4
Лучший ответ Сообщение было отмечено Ananas_ik как решение

Решение

Ananas_ik, держите код:

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
#include <bits/stdc++.h>
 
using namespace std;
 
int main()
{
    int N, min, max, a, b, sum = 0;
    cout << "Enter an array size:" << "\n";
    cout << "N = ";
    cin >> N;
    int* arr = new int[N];
    cout << "Enter some array elements:" << "\n";
    for (int i = 0; i < N; i++)
    {
        cin >> arr[i];
    }
    min = INT_MAX;
    max = INT_MIN;
    for (int i = 0; i < N; i++)
    {
        if (arr[i] < min)
        {
            min = arr[i];
            a = i;
        }
        if (arr[i] > max)
        {
            max = arr[i];
            b = i;
        }
    }
    if (a > b)
        swap(a, b);
    for (int i = a + 1; i < b; i++)
    {
        sum += arr[i];
    }
    cout << "Target sum: " << sum << "\n";
    delete [] arr;
    cin.get();
    return 0;
}
0
Диссидент
Эксперт C
26826 / 16735 / 3666
Регистрация: 24.12.2010
Сообщений: 37,459
10.11.2017, 20:43 5
C++
1
2
3
4
5
a = b = 0;
for(int i=1; i<N; i++) {
  if (arr[i] < arr[a]) a = i;
  if (arr[i] > arr[b]) b = i;
}
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.11.2017, 20:43
Помогаю со студенческими работами здесь

Вычислить разность между максимальным и минимальным числом массива
Дан массив целых чисел. Вычислить разность между максимальным и минимальным числом. Найти номер...

Функция удаления из списка всех элементов между минимальным и максимальным числом
Здравствуйте! Помогите написать функцию удаления всех элементов между минимальным и максимальным...

Вычислить сумму между минимальным и максимальным элементами двумерного массива
Здравствуйте! Помогите пожалуйста, никак не могу сообразить! Надо посчитать сумму между...

Стек. Подсчитать сумму элементов между максимальным и минимальным
Подсчитать сумму элементов между максимальным и минимальным Просто вывод элементов #include...


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

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

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