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

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

09.11.2011, 21:05. Показов 41380. Ответов 14
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В динамическом массиве, состоящем из n вещественных величин.
А. Сумму отрицательных элементов массива
В. Произведение элементов массива, расположенных между максимальным и минимальным элементами
С.упорядочить элементы массива по возрастанию
пожалуйста помогите((
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.11.2011, 21:05
Ответы с готовыми решениями:

Произведение элементов массива, расположенных между максимальным и минимальным элементами
помогите мне разобраться с массивами. я работаю с программой MS Visual Studio 2008. не получается...

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

Произведение элементов массива, расположенных между максимальным и минимальным элементами
Добрый вечер. Помогите разобраться с массивами. Поиск изал но толком ничего понятного для себя не...

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

14
Студент
148 / 148 / 64
Регистрация: 18.01.2011
Сообщений: 469
09.11.2011, 21:26 2
A,C:
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
#include <iostream>  
using namespace std;   
int main() 
{ 
        int n;
        cin >> n;
        int *a = new int [n];
        int sum = 0;
        for(int i = 0; i < n; i++)
        {
            cin >> a[i];
            if(a[i] < 0)
                sum += a[i];
        }
        int temp;
        for(int i = 0; i < n; i++)
        {
            for(int j = 0; j < n-1; j++)
            {
                if(a[j] > a[j+1])
                {
                    temp = a[j];
                    a[j] = a[j+1];
                    a[j+1] = temp;
                }
            }
        }
}
Добавлено через 4 минуты
B:
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
#include <iostream>  
using namespace std;   
int main() 
{ 
        int n;
        cin >> n;
        int *a = new int [n];
        for(int i = 0; i < n; i++)
        {
            cin >> a[i];
        }
        int max = a[0];
        int min = a[0];
        int im, jm;
        for(int i = 0; i < n; i++)
        {
            if(a[i] > max)
            {
                max = a[i];
                im = i;
            }
            if(a[i] < min)
            {
                min = a[i];
                jm = i;
            }
        }
        int proz = 1;
        if(im > jm)
        {
            for(int i = jm; i <= im ; i++)
            {
                proz *= a[i];
            }
        }
        else if(jm > im)
        {
            for(int i = jm; i <= im ; i++)
            {
                proz *= a[i];
            }
        }   
}
0
2 / 2 / 0
Регистрация: 08.02.2011
Сообщений: 38
09.11.2011, 21:33  [ТС] 3
А это в 1 код объединить возможно ?
0
Студент
148 / 148 / 64
Регистрация: 18.01.2011
Сообщений: 469
09.11.2011, 21:36 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
#include <iostream>  
using namespace std;   
int main() 
{ 
    int n;
    cin >> n;
    int *a = new int [n];
    int sum = 0;
    //ввод и подсчет суммы массива
    for(int i = 0; i < n; i++)
    {
        cin >> a[i];
        if(a[i] < 0)
            sum += a[i];
    }
    //сортировка
    int temp;
    for(int i = 0; i < n; i++)
    {
        for(int j = 0; j < n-1; j++)
        {
            if(a[j] > a[j+1])
            {
                temp = a[j];
                a[j] = a[j+1];
                a[j+1] = temp;
            }
        }
    }
    //умножение между макс и мин
    int max = a[0];
    int min = a[0];
    int im, jm;
    for(int i = 0; i < n; i++)
    {
        if(a[i] > max)
        {
            max = a[i];
            im = i;
        }
        if(a[i] < min)
        {
            min = a[i];
            jm = i;
        }
    }
    int proz = 1;
    if(im > jm)
    {
        for(int i = jm; i <= im ; i++)
        {
            proz *= a[i];
        }
    }
    else if(jm > im)
    {
        for(int i = jm; i <= im ; i++)
        {
            proz *= a[i];
        }
    }   
}
1
2 / 2 / 0
Регистрация: 08.02.2011
Сообщений: 38
09.11.2011, 21:44  [ТС] 5
а почему при запуске программы ничего не выводиться на экран ?
0
Студент
148 / 148 / 64
Регистрация: 18.01.2011
Сообщений: 469
09.11.2011, 21:44 6
потому что я не делал.
1
2 / 2 / 0
Регистрация: 08.02.2011
Сообщений: 38
09.11.2011, 21:51  [ТС] 7
Цитата Сообщение от amor1k Посмотреть сообщение
потому что я не делал.
уже увидел понял
0
Студент
148 / 148 / 64
Регистрация: 18.01.2011
Сообщений: 469
09.11.2011, 21:55 8
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
#include <iostream>  
using namespace std;   
int main() 
{ 
    setlocale(0,"");
    int n, min, max, proz;
    int im, jm;
    cout << "Введите кол-во элементов: ";
    cin >> n;
    int sum = 0;
    int *a = new int [n];
    while(true)
    {
        system("cls");
        cout << "\t\tМЕНЮ: \n" << endl;
        cout << "1. ввод массива" << endl;
        cout << "2. сумма отр. эл-ов" << endl;
        cout << "3. сортировка" << endl;
        cout << "4. умножение" << endl;
        cout << "5. вывод массива" << endl;
        cout << "0. выход" << endl;
        int choice;
        cin >> choice;
        switch(choice)
        {
        case 1:
            for(int i = 0; i < n; i++)
            {
                cin >> a[i];
            }
            break;
        case 2:
            system("cls");
    
            for(int i = 0; i < n; i++)
            {
                if(a[i] < 0)
                    sum += a[i];
            }
            cout << "Summ = " << sum;
            system("pause");
            break;
        case 3:
            system("cls");
            int temp;
            for(int i = 0; i < n; i++)
            {
                for(int j = 0; j < n-1; j++)
                {
                    if(a[j] > a[j+1])
                    {
                        temp = a[j];
                        a[j] = a[j+1];
                        a[j+1] = temp;
                    }
                }
            }
            cout << "Отсортированный массив:\n ";
            for(int i = 0; i < n; i++)
            {
                cout << a[i] << " ";
            }
            system("pause");
            break;
        case 4:
            system("cls");
            max = a[0];
            min = a[0];
 
            for(int i = 0; i < n; i++)
            {
                if(a[i] > max)
                {
                    max = a[i];
                    im = i;
                }
                if(a[i] < min)
                {
                    min = a[i];
                    jm = i;
                }
            }
            proz = 1;
            if(im > jm)
            {
                for(int i = jm; i <= im ; i++)
                {
                    proz *= a[i];
                }
            }
            else if(jm > im)
            {
                for(int i = jm; i <= im ; i++)
                {
                    proz *= a[i];
                }
            } 
            cout << "Произведение между максимальным и минимальным элементами = " << proz;
            system("pause");
            break;
        case 5:
            system("cls");
            for(int i = 0; i < n; i++)
            {
                cout << a[i] << " ";
            }
            system("pause");
            break;
        case 0:
            return 0;
            break;
        }
    }
    delete a;
}
Добавлено через 21 секунду
чтоб 5 получил=) или куда там надо=)
3
2 / 2 / 0
Регистрация: 08.02.2011
Сообщений: 38
09.11.2011, 22:06  [ТС] 9
Цитата Сообщение от amor1k Посмотреть сообщение
чтоб 5 получил=) или куда там надо=)
Попросил для примера, чтоб проанализировать код и составить свой + ко всему необходимо составить алгоритм, вечер еще только начинается и он будет долгим))
0
Студент
148 / 148 / 64
Регистрация: 18.01.2011
Сообщений: 469
09.11.2011, 22:26 10
я вам дал примеры выше.
А я прост подумал, что для вуза надо) уже прост привык, что многим требуется для учебы
0
2 / 2 / 0
Регистрация: 08.02.2011
Сообщений: 38
09.11.2011, 22:46  [ТС] 11
http://img689.imageshack.us/img689/7504/vs5n.png
Почему при выборе какого либо варианта кроме выход ничего не происходит ?
0
Студент
148 / 148 / 64
Регистрация: 18.01.2011
Сообщений: 469
10.11.2011, 00:07 12
потому что стоит цикл, специально сделанный для меню
C++
1
2
3
4
while(true) 
{
    .....  //меню
}
0
2 / 2 / 0
Регистрация: 08.02.2011
Сообщений: 38
10.11.2011, 00:17  [ТС] 13
Цитата Сообщение от amor1k Посмотреть сообщение
потому что стоит цикл, специально сделанный для меню
C++
1
2
3
4
while(true) 
{
    .....  //меню
}
я так понимаю printf нужно добавить дабы увидеть результаты работы данного меню. т.е дабы после выбора увидеть результат
0
Студент
148 / 148 / 64
Регистрация: 18.01.2011
Сообщений: 469
10.11.2011, 00:31 14
Ну в общем да) Этот цикл я использовал, чтобы программа была читабельней, т.е. не лепилось одно на другом. Можете убрать его, и после каждого действия программа будет закрываться. Почитайте книги, поэкспериментируйте, интересуйтесь)
0
2 / 2 / 0
Регистрация: 24.05.2014
Сообщений: 29
08.05.2012, 00:08 15
Здравствуйте. Подскажите пожалуйста. Вот разбирался в коде, и не могу понять, почему в консоле при умножении, т.е. 4 пункта по меню, начинаются ошибки, а при компилировании всё норм.
Если быть точным, то VS2010 начинает жаловаться с 84 строки.
C++ (Qt)
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
#include <iostream>  
using namespace std;   
int main() 
{ 
    setlocale(0,"");
    int n, min, max, proz;
    int im, jm;
    cout << "Введите кол-во элементов: ";
    cin >> n;
    int sum = 0;
    int *a = new int [n];
    while(true)
    {
        system("cls");
        cout << "\t\tМЕНЮ: \n" << endl;
        cout << "1. ввод массива" << endl;
        cout << "2. сумма отр. эл-ов" << endl;
        cout << "3. сортировка" << endl;
        cout << "4. умножение" << endl;
        cout << "5. вывод массива" << endl;
        cout << "0. выход" << endl;
        int choice;
        cin >> choice;
        switch(choice)
        {
        case 1:
            for(int i = 0; i < n; i++)
            {
                cin >> a[i];
            }
            break;
        case 2:
            system("cls");
    
            for(int i = 0; i < n; i++)
            {
                if(a[i] < 0)
                    sum += a[i];
            }
            cout << "Summ = " << sum << endl;
            system("pause");
            break;
        case 3:
            system("cls");
            int temp;
            for(int i = 0; i < n; i++)
            {
                for(int j = 0; j < n-1; j++)
                {
                    if(a[j] > a[j+1])
                    {
                        temp = a[j];
                        a[j] = a[j+1];
                        a[j+1] = temp;
                    }
                }
            }
            cout << "Отсортированный массив:\n ";
            for(int i = 0; i < n; i++)
            {
                cout << a[i] << " ";
            }
            system("pause");
            break;
        case 4:
            system("cls");
            max = a[0];
            min = a[0];
 
            for(int i = 0; i < n; i++)
            {
                if(a[i] > max)
                {
                    max = a[i];
                    im = i;
                }
                if(a[i] < min)
                {
                    min = a[i];
                    jm = i;
                }
            }
            proz = 1;
            if(im > jm)
            {
                for(int i = jm; i <= im ; i++)
                {
                    proz *= a[i];
                }
            }
            else if(jm > im)
            {
                for(int i = jm; i <= im ; i++)
                {
                    proz *= a[i];
                }
            } 
            cout << "Произведение между максимальным и минимальным элементами = " << proz << endl;
            system("pause");
            break;
        case 5:
            system("cls");
            for(int i = 0; i < n; i++)
            {
                cout << a[i] << " ";
            }
            system("pause");
            break;
        case 0:
            return 0;
            break;
        }
    }
    delete a;
}
0
08.05.2012, 00:08
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.05.2012, 00:08
Помогаю со студенческими работами здесь

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

Произведение отрицательных элементов массива, расположенных между минимальным и максимальным элементами
#include &lt;iostream&gt; #include &lt;stdlib.h&gt; #include &lt;time.h&gt; #include &lt;cmath&gt; using namespace...

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

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


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

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

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