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

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

30.04.2018, 14:00. Показов 1468. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Даны целочисленные массивы А(N), B(N*2), C(N*3). Где N это размерность. Найти произведение минимальных и сумму максимальных элементов массива.
Выполнить программу на языке СИ.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
30.04.2018, 14:00
Ответы с готовыми решениями:

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

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

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

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

3
1858 / 1079 / 683
Регистрация: 25.04.2016
Сообщений: 3,036
30.04.2018, 16:14 2
Лучший ответ Сообщение было отмечено qwetex как решение

Решение

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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
//#include <conio.h>
 
void gen_rand(int*, int);
void print_ar(int*, int);
int  min_mass(int*, int);
int  max_mass(int*, int);
 
int main (void)
{
    srand(time(NULL));  // msvs: srand(_getpid()); - новая точка отсчета рнд
    int n;
    printf("n = ");     scanf("%d", &n);        // узнаем размер массива
    if (n<1) return -1;                         // если размер нулевой, конец
    int n1 = 2*n, n2 = 3*n;                     // размеры массивов b и c
    int *a = NULL, *b = NULL, *c = NULL;        // указатели на массивы
 
    /* запрашиваем память под массивы */
    if ((a = (int*)malloc(n*sizeof(int))) == NULL) return -1;
    if ((b = (int*)malloc(n1*sizeof(int))) == NULL)
    {
        free(a);
        return -1;
    }
    if ((c = (int*)malloc(n2*sizeof(int))) == NULL)
    {
        free(a);
        free(b);
        return -1;
    }
 
    /* заполняем массивы случайными */
    gen_rand(a, n);
    gen_rand(b, n1);
    gen_rand(c, n2);
    /* выводим массивы на экран */
    printf("array a:\n");  print_ar(a, n);
    printf("array b:\n");  print_ar(b, n1);
    printf("array c:\n");  print_ar(c, n2);
 
    /* находим минимальные */
    int f = a[min_mass(a, n)];
    int g = b[min_mass(b, n1)];
    int h = c[min_mass(c, n2)];
    /* находим максимальные */
    int i = a[max_mass(a, n)];
    int k = b[max_mass(b, n1)];
    int m = c[max_mass(c, n2)];
 
    /* выводим результаты поисков на экран */
    printf("min:\n");
    printf("min a = %d\n", f);
    printf("min b = %d\n", g);
    printf("min c = %d\n", h);
    printf("max:\n");
    printf("max a = %d\n", i);
    printf("max b = %d\n", k);
    printf("max c = %d\n", m);
    /* выводим окончательные результаты */
    printf("\n");
    printf("composition of minimals is: %d\n", f*g*h);  // произведение минимальных
    printf("amount of maximum is: %d\n", i+k+m);        // сумма максимальных
 
    /* освобождаем память и выходим */
    free(a);
    free(b);
    free(c);
    return 0;
}
// ------------------------------------------------------------
// заполняем массив случайными
void gen_rand(int* a, int n)
{
    int i;
    for (i=0; i<n; i++)
        a[i] = 1 + rand() %n;
}
// ------------------------------------------------------------
// выводим массив на экран
void print_ar(int* a, int n)
{
    int i;
    for (i=0; i<n; i++)
        printf("%3d", a[i]);
    printf("\n");
}
// ------------------------------------------------------------
// находим минимальный элемент массива
int min_mass(int* a, int n)
{
    int i, min = 0;
    for (i=1; i<n; i++)
        if (a[i] < a[min]) min = i;
    return min;
}
// ------------------------------------------------------------
// находим максимальный элемент массива
int max_mass(int* a, int n)
{
    int i, max = 0;
    for (i=1; i<n; i++)
        if (a[i] > a[max]) max = i;
    return max;
}
1
0 / 0 / 0
Регистрация: 30.04.2018
Сообщений: 4
30.04.2018, 19:17  [ТС] 3
спасибо, но она закрывается.. попробовал добавить system("pause"); но все равно закрывается

Добавлено через 13 минут
спасибо, но она закрывается.. попробовал добавить system("pause"); но все равно закрывается

Добавлено через 15 секунд
спасибо, но она закрывается.. попробовал добавить system("pause"); но все равно закрывается
0
1858 / 1079 / 683
Регистрация: 25.04.2016
Сообщений: 3,036
30.04.2018, 20:21 4
Добавьте system("pause"); или getchar(); между 69 и 70 строчками.

Добавлено через 3 минуты
Если вы добавляете команду и программа все равно закрывается, то это может происходить из-за того, что после вызова scanf в 15 строке в потоке ввода остается необработанный символ переноса строки '\n', чтобы это исправить измените вызов scanf на
C
1
scanf("%8d", &n);
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.04.2018, 20:21
Помогаю со студенческими работами здесь

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

Найти разности максимальных и минимальных элементов столбцов массива, записать их в одномерный массив
А не могли бы Вы мне подправить программу. Не работает совсем. Задан квадратный двумерный массив...

Найти произведение минимальных элементов массива
в Visual Basic 6.0 Дан одномерный массив из N элементов: б)Найти произведение минимальных...

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

Найти произведение трёх минимальных элементов массива
Прошу помощи......вот задание: Дан массив размером N. Найти произведение трёх минимальных...

Найти произведение максимальных элементов столбцов массива
Добрый день .Как найти найти произведение максимальных элементов столбцов массива.Спасибо.


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

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

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