Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 20.11.2019
Сообщений: 9
1

Функции и массивы

19.03.2020, 13:21. Показов 231. Ответов 6

Author24 — интернет-сервис помощи студентам
Нужно описать функцию формирования элементов с помощью генератора случайных и найти минимальный и максимальный элементы этого массива и найти сумму между этими элементами. Не могу описать последнюю функцию, для нахождения суммы. Нужно без указателей.
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
#include<iostream>
#include<stdlib.h>
#include<time.h>
using namespace std;
void massiv(int arr[], int size);
int massiv_min(int arr[], int size);
int massiv_max(int arr[], int size);
int massiv_sum(int arr[], int size);
int main()
{
    setlocale(0, "rus");
    const int size = 20;
    int arr[size] = {};
    massiv(arr, size);
    cout << endl;
    cout << "Минимальный элемент массива: " << massiv_min(arr, size) << endl;
    cout << "Максимальный элемент массива: " << massiv_max(arr, size) << endl;
    cout << "Сумма элементов, лежащих между максимальным и минимальным элементом массива: " << massiv_sum(arr, size) << endl;
    return 0;
}
void massiv(int arr[], int size)
{
    srand(time(NULL));
    for (int i = 0; i < size; i++)
    {
        arr[i] = rand() % 201;
        cout << arr[i] << endl;
    }
    cout << endl;
}
int massiv_min(int arr[], int size)
{
    int min = arr[0];
    for (int i = 0; i < size; i++)
    {
            if (arr[i] < min)
                min = arr[i];
    }
    return min;
}
int massiv_max(int arr[], int size)
{
    int max = arr[0];
    for (int i = 0; i < size; i++)
    {
            if (arr[i] > max)
                max = arr[i];
    }
    return max;
}
int massiv_sum(int arr[], int size)
{
    int sum = 0;
    if (min < max)
    {
        for (int i = min + 1; i < max; i++)
            sum += arr[i];
    }
    else if(min > max)
    {
        for (int i = max + 1; i < min; i++)
            sum += arr[i];
    }
    return sum;
}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.03.2020, 13:21
Ответы с готовыми решениями:

Табулирование функции и поиск данных. Одномерные массивы. Двумерные массивы
Вычислить сумму первых четырех отрицательных элементов. В соответствии с п. 5.16 правил...

Указатели и массивы. Индексация с помощью указателей. Передача массивов в функции. Динамические массивы (обработка матриц)
Для каждого элемента , bij, i= 1,...,n , j=1,...,n определяется свой многоугольник...

Массивы, функции
Ребят, помогите прогу написать по заданию, пожалуйста.

функции (массивы)
Даны 3 массива найти количество отрицательных элементов каждом массиве и суммы отрицательных...

6
2105 / 1192 / 496
Регистрация: 11.10.2018
Сообщений: 6,000
19.03.2020, 13:46 2
Создай стуртуру с номером Nmin - минимального элемента и Nmax - номером максимального элемента. Запоминаешь при нахождении эти номера. В финальной функции считаешь сумму между ними(оператор for).
0
0 / 0 / 0
Регистрация: 20.11.2019
Сообщений: 9
19.03.2020, 14:48  [ТС] 3
FFPowerMan, мне нужно последнюю функцию описать, чтобы в ней уже были запомненные элементы, без структур. Не понимаю как это сделать. Мне нужно на моем коде объяснение
0
2105 / 1192 / 496
Регистрация: 11.10.2018
Сообщений: 6,000
19.03.2020, 15:01 4
А кто код писал?
0
0 / 0 / 0
Регистрация: 20.11.2019
Сообщений: 9
19.03.2020, 15:03  [ТС] 5
FFPowerMan, я
0
2105 / 1192 / 496
Регистрация: 11.10.2018
Сообщений: 6,000
19.03.2020, 15:15 6
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
#include<iostream>
#include<stdlib.h>
#include<time.h>
using namespace std;
 
int Nmin, Nmax;
 
void massiv(int arr[], int size);
int massiv_min(int arr[], int size);
int massiv_max(int arr[], int size);
int massiv_sum(int arr[], int size);
 
int main()
{
    setlocale(0, "Rus");
 
    const int size = 20;
    int arr[size] = {0};
    massiv(arr, size);
 
    cout << "\n";
    cout << "Минимальный элемент массива: " << massiv_min(arr, size) << endl;
    cout << "Номер минимального элемента: " << Nmin << endl;
    cout << "Максимальный элемент массива: " << massiv_max(arr, size) << endl;
    cout << "Номер максимального элемента: " << Nmax << endl;
    cout << "Сумма элементов, лежащих между максимальным и минимальным элементом массива: " << massiv_sum(arr, size) << endl;
    return 0;
}
 
 
void massiv(int arr[], int size)
{
    srand(time(NULL));
    for (int i = 0; i < size; i++)
    {
        arr[i] = rand()%201;
        cout << arr[i] << " ";
    }
    cout << endl;
}
 
 
int massiv_min(int arr[], int size)
{
    int min = arr[0], i;
    Nmin = 0;
    for(i = 1; i < size; i++)
    {
            if (arr[i] < min)
            {
                min = arr[i];
                Nmin = i;
            }
    }
    return min;
}
 
 
int massiv_max(int arr[], int size)
{
    int max = arr[0], i;
    Nmax = 0;
    for(i = 0; i < size; i++)
    {
            if(arr[i] > max)
            {
                max = arr[i];
                Nmax = i;
            }
    }
    return max;
}
 
 
int massiv_sum(int arr[], int size)
{
    int sum = 0, i, Start, End;
    if(Nmin <= Nmax)
    {
      Start = Nmin;
      End = Nmax;
    }
    else
    {
      Start = Nmax;
      End = Nmin;
    }
 
    for(i = Start+1; i < End; i++)
       sum += arr[i];
 
    return sum;
}
1
0 / 0 / 0
Регистрация: 20.11.2019
Сообщений: 9
19.03.2020, 18:01  [ТС] 7
FFPowerMan, спасибо!
0
19.03.2020, 18:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.03.2020, 18:01
Помогаю со студенческими работами здесь

массивы и функции
Помогите, пожалуйста, разобраться в следующем задании. &quot;Дан 2d массив А(n,n), который заполнен...

Функции и массивы
Помогите решить задачу: использование массивов и применение функций(разрешается применять шаблоны),...

Массивы и функции
Помогите пожалуйста решить проблему: мне нужно переделать следующий код так чтоб он был написан...

Функции (массивы)
Помогите пожалуйста исправить ошибки в коде. Вот программа (операции над массивами в виде функций):...


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

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