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

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

Войти
Регистрация
Восстановить пароль
 
Pekishenok
0 / 0 / 0
Регистрация: 09.07.2014
Сообщений: 8
#1

Среднее арифметическое min и max элементов матрицы - C++

09.07.2014, 21:22. Просмотров 350. Ответов 9
Метки нет (Все метки)

В целочисленном массиве A[n][m] для каждого столбца найти среднее арифметическое max и min элементов.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.07.2014, 21:22
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Среднее арифметическое min и max элементов матрицы (C++):

Найти max и min, если min левее max, то среднее арифметическое между ними - C++
#include <iostream.h> #include <stdio.h> #include <conio.h> #include <math.h> void main() { int n,a; int...

Найти среднее арифметическое элементов между min и max элементами массива - C++
Найти среднеарифметическое чисел, находящихся между максимальным и минимальным элементами массива (включая эти элементы в вычисление...

Посчитать среднее арифметическое элементов массива, расположенных между max и min - C++
В массиве нужно подсчитать среднее арифметическое всех элементов расположенных между максимальным элементом и минимальным! например я...

Среднее арифметическое элементов, расположенных между первым min и последним max элементами массива - C++
Найти среднее арифметическое элементов, расположенных между первым минимальным и последним максимальным элементами. Если последний...

Подсчитать в массиве среднее арифметическое всех элементов, найти макси мальный max и минимальный min элементы массива. - C++
Вопрос в следующем. Нужно написать программу на С++ вот задание: Создать массив a1, a2, ..., an из n случайных чисел в пределах от 0...

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

9
zss
Модератор
Эксперт С++
6487 / 6050 / 1988
Регистрация: 18.12.2011
Сообщений: 15,691
Завершенные тесты: 1
09.07.2014, 21:41 #2
См. например
Найти максимальный элемент в заданной строке двумерного массива
Аналогично находите минимум и делите сумму max+min на два.
Сделаете так для каждой строки.
0
Pekishenok
0 / 0 / 0
Регистрация: 09.07.2014
Сообщений: 8
09.07.2014, 21:55  [ТС] #3
а если для столбца?
0
deniska91
54 / 3 / 3
Регистрация: 17.05.2014
Сообщений: 72
09.07.2014, 22:00 #4
C++
1
2
3
4
5
6
7
8
9
10
11
for (int i = 0; i < m; i++)
{
    min = max = A[0][i];
    for(int j = 1; j < n; j++)
    {
        if (min > A[j][i]) min = A[j][i];
        if (max < A[j][i]) max = A[j][i];
    }
    sum = (min + max) / 2.f;
    std::cout << sum << std::endl;
}
0
Pekishenok
0 / 0 / 0
Регистрация: 09.07.2014
Сообщений: 8
09.07.2014, 22:47  [ТС] #5
Цитата Сообщение от deniska91 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
for (int i = 0; i < m; i++)
{
    min = max = A[0][i];
    for(int j = 1; j < n; j++)
    {
        if (min > A[j][i]) min = A[j][i];
        if (max < A[j][i]) max = A[j][i];
    }
    sum = (min + max) / 2.f;
    std::cout << sum << std::endl;
}
Цитата Сообщение от zss Посмотреть сообщение
Аналогично находите минимум
Когда ищу min появляется ошибка. посмотрите, где я неправа
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
const int N=3;
const int M=5;
 
int main()
{
     setlocale(LC_ALL, "Russian");
    int i, j, max, min, row, col;
    float sum;
    int arr[N][M];
    printf("Введите массив:\n ");
    for (i=0; i<N; i++) 
        for (j=0; j<M; j++)
            scanf("%d",&arr[i][j]);  //ввод данных в массив
            
    printf("Матрица A\n"); 
    for ( i = 0; i < N; i ++ ) 
    { 
            for ( j = 0; j < M; j ++ ) 
                printf ( "%4d ", arr[i][j] ); // вывод массива
            printf("\n");
    }
  
    
    for (int i = 0; i < M; i++)
{
    max = arr[0][i];
    row = 0; 
    col = 0; 
    for(int j = 1; j < M; j++)
    {
        if ( arr[i][j] < arr[row][col]) // нахождение min элемента
                { 
                    row = i; 
                    col = j;
                    min=arr[row][col];
        }
        if (max < arr[j][i])
        {
            max = arr[j][i];
        }
    }
    sum = float((min + max)) / 2.f;
    printf("\nmin (%d): ",min);
    printf("\nmax (%d): ",max);
    printf("\nsum (%-5.2f): ",sum);
    
}                    
    system ("pause");
    getch();
}
0
deniska91
54 / 3 / 3
Регистрация: 17.05.2014
Сообщений: 72
09.07.2014, 23:24 #6
Pekishenok, а чем вам мой код не нравится, находит среднее арифметическое каждого столбца.
0
Pekishenok
0 / 0 / 0
Регистрация: 09.07.2014
Сообщений: 8
10.07.2014, 00:04  [ТС] #7
deniska91, тоже самое. поэтому взяла свой из другой задачи, и тоже не работает
0
deniska91
54 / 3 / 3
Регистрация: 17.05.2014
Сообщений: 72
10.07.2014, 00:18 #8
Цитата Сообщение от Pekishenok Посмотреть сообщение
Когда ищу min появляется ошибка. посмотрите, где я неправа
Что за ошибка появляется?
0
Alex5
1075 / 739 / 115
Регистрация: 12.04.2010
Сообщений: 1,895
10.07.2014, 00:22 #9
Pekishenok, лучше(чем исправлять ошибки) будет удалить строки 27,28, 31-36 и написать заново. (7 ошибок в 8 строках).
Pekishenok, можете ли Вы решить такую задачу. (Возможно, для начала удобнее будет, не отвлекаясь на матрицы и столбцы, рассмотреть задачу попроще.) В массиве arr[MAXSIZE] найти min элемент:
C++
1
2
3
4
5
// определение массива ...
for( ... )
{
  // какие действия необходимо выполнить для поиска min? 
}
0
deniska91
54 / 3 / 3
Регистрация: 17.05.2014
Сообщений: 72
10.07.2014, 00:22 #10
замените в своем коде
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
for (int i = 0; i < M; i++)
{
    max = arr[0][i];
    row = 0; 
    col = 0; 
    for(int j = 1; j < M; j++)
    {
        if ( arr[i][j] < arr[row][col]) // нахождение min элемента
                { 
                    row = i; 
                    col = j;
                    min=arr[row][col];
        }
        if (max < arr[j][i])
        {
            max = arr[j][i];
        }
    }
    sum = float((min + max)) / 2.f;
    printf("\nmin (%d): ",min);
    printf("\nmax (%d): ",max);
    printf("\nsum (%-5.2f): ",sum);
    
}
на
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
for (int i = 0; i < M; i++)
{
    min = max = arr[0][i];
    for(int j = 1; j < N; j++)
    {
        if (min > arr[j][i]) min = arr[j][i];
        if (max < arr[j][i]) max = arr[j][i];
    }
    sum = (min + max) / 2.f;
   printf("\nmin (%d): ",min);
    printf("\nmax (%d): ",max);
    printf("\nsum (%-5.2f): ",sum);
}
0
10.07.2014, 00:22
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.07.2014, 00:22
Привет! Вот еще темы с ответами:

Вычислить среднее арифметическое и среднее геометрическое положительных элементов матрицы - C++
Составить функцию что вычесляет среднее арифметическое и среднее геометрическое положительных элементов матрицы.Помогите пожалуйста

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

Найти среднее арифметическое значение четных элементов и среднее арифметическое нечетных элементов и сравнить их между собой - C++
Найти среднее арифметическое значение четных элементов и среднее арифметическое нечетных элементов и сравнить их между собой. Вот часть...

Найти среднее квадратическое элементов матрицы и max отклонение от него для элементов главной диагонали - C++
Нужно найти среднее квадратическое значения элементов и максимальное отклонение от этого значения для элементов на главной диагонали. 1....


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

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

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