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

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

Восстановить пароль Регистрация
 
Pekishenok
0 / 0 / 0
Регистрация: 09.07.2014
Сообщений: 8
09.07.2014, 21:22     Среднее арифметическое min и max элементов матрицы #1
В целочисленном массиве A[n][m] для каждого столбца найти среднее арифметическое max и min элементов.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.07.2014, 21:22     Среднее арифметическое min и max элементов матрицы
Посмотрите здесь:

Массивы[max,min,среднее ариф.] C++
среднее арифметическое неотрицательных элементов матрицы C++
Составить матрицу, элементы которой равны разности между min и max элементов матрицы А, расположенных в закрашенной области C++
C++ Подсчитать в массиве среднее арифметическое всех элементов, найти макси мальный max и минимальный min элементы массива.
Найти среднее арифметическое элементов каждой строки матрицы Q (lm) и отнять его от элементов этой строки. размер матрицы 7х7.заранее спасибо C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
zss
Модератор
Эксперт С++
 Аватар для zss
5942 / 5547 / 1783
Регистрация: 18.12.2011
Сообщений: 14,154
Завершенные тесты: 1
09.07.2014, 21:41     Среднее арифметическое min и max элементов матрицы #2
См. например
Найти максимальный элемент в заданной строке двумерного массива
Аналогично находите минимум и делите сумму max+min на два.
Сделаете так для каждой строки.
Pekishenok
0 / 0 / 0
Регистрация: 09.07.2014
Сообщений: 8
09.07.2014, 21:55  [ТС]     Среднее арифметическое min и max элементов матрицы #3
а если для столбца?
deniska91
54 / 3 / 3
Регистрация: 17.05.2014
Сообщений: 72
09.07.2014, 22:00     Среднее арифметическое min и max элементов матрицы #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;
}
Pekishenok
0 / 0 / 0
Регистрация: 09.07.2014
Сообщений: 8
09.07.2014, 22:47  [ТС]     Среднее арифметическое min и max элементов матрицы #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();
}
deniska91
54 / 3 / 3
Регистрация: 17.05.2014
Сообщений: 72
09.07.2014, 23:24     Среднее арифметическое min и max элементов матрицы #6
Pekishenok, а чем вам мой код не нравится, находит среднее арифметическое каждого столбца.
Pekishenok
0 / 0 / 0
Регистрация: 09.07.2014
Сообщений: 8
10.07.2014, 00:04  [ТС]     Среднее арифметическое min и max элементов матрицы #7
deniska91, тоже самое. поэтому взяла свой из другой задачи, и тоже не работает
deniska91
54 / 3 / 3
Регистрация: 17.05.2014
Сообщений: 72
10.07.2014, 00:18     Среднее арифметическое min и max элементов матрицы #8
Цитата Сообщение от Pekishenok Посмотреть сообщение
Когда ищу min появляется ошибка. посмотрите, где я неправа
Что за ошибка появляется?
Alex5
881 / 616 / 81
Регистрация: 12.04.2010
Сообщений: 1,546
10.07.2014, 00:22     Среднее арифметическое min и max элементов матрицы #9
Pekishenok, лучше(чем исправлять ошибки) будет удалить строки 27,28, 31-36 и написать заново. (7 ошибок в 8 строках).
Pekishenok, можете ли Вы решить такую задачу. (Возможно, для начала удобнее будет, не отвлекаясь на матрицы и столбцы, рассмотреть задачу попроще.) В массиве arr[MAXSIZE] найти min элемент:
C++
1
2
3
4
5
// определение массива ...
for( ... )
{
  // какие действия необходимо выполнить для поиска min? 
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.07.2014, 00:22     Среднее арифметическое min и max элементов матрицы
Еще ссылки по теме:

Найти сумму max элементов столбцов, и номер строки, в которой находится элемент матрицы с min значением C++
C++ Определить: среднее арифметическое элементов n-го столбца и сумму квадратов элементов k-й строки матрицы

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

Или воспользуйтесь поиском по форуму:
deniska91
54 / 3 / 3
Регистрация: 17.05.2014
Сообщений: 72
10.07.2014, 00:22     Среднее арифметическое min и max элементов матрицы #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);
}
Yandex
Объявления
10.07.2014, 00:22     Среднее арифметическое min и max элементов матрицы
Ответ Создать тему
Опции темы

Текущее время: 17:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru