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

Найти среднее арифметическое наименьших элементов каждого столбца квадратной матрицы

12.05.2016, 23:21. Показов 2023. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дана квадратная матрица. Найти среднее арифметическое наименьших элементов каждого столбца.
не могу решит, может кто знает?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.05.2016, 23:21
Ответы с готовыми решениями:

Найти среднее арифметическое положительных элементов каждого столбца матрицы
Дана квадратная матрица А порядка n. Найти среднее арифметическое положительных элементов каждого...

Найти среднее арифметическое элементов, кратных 3, для каждого столбца матрицы
матрица n*m

Среднее арифметическое элементов каждого столбца матрицы
Что не так? в SA выводит все элементы = 0 Задание: Найти среднее арифметическое элементов каждого...

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

6
1 / 1 / 1
Регистрация: 12.05.2016
Сообщений: 29
12.05.2016, 23:31 2
Вроде так как-то. Если m - столбцы, а n - строки.
C++
1
2
3
4
5
6
7
8
9
10
11
int min = a[0][0];
int tmp = 1;
for(int i = 0; i < m; i++)
{for(int j = 0; j < n; j++)
{
if(a[i][j] < min)
min = a[i][j];
}
  tmp*=min;
}
avg = tmp/m;
0
0 / 0 / 0
Регистрация: 12.05.2016
Сообщений: 15
12.05.2016, 23:56  [ТС] 3
А можешь пожалуйста целиком прогу написать, я просто совсем чайник и у меня вообще не получается)))
и там квадратная матрица она получается mxm должна быть же?
0
4 / 4 / 6
Регистрация: 08.08.2015
Сообщений: 7
13.05.2016, 00:24 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
#include <iostream>
 
using namespace std;
 
void inputArray(int sizeArray, int **arr){
    for (int i=0; i<sizeArray; i++){
        for (int j=0; j<sizeArray; j++){
            cin >> arr[i][j];
        }
    }   
}
 
int main(){
    int sizeArray;
    cin >> sizeArray;
    int **arr = new int*[sizeArray];
    for (int i=0; i<sizeArray; i++){
        arr[i] = new int[sizeArray];
    }
    inputArray(sizeArray, arr);
    int sumMin = 0;
    for (int j=0; j<sizeArray; j++){
        int min=arr[0][j];
        for (int i=1; i<sizeArray; i++){
            if (arr[i][j]<min){
                min = arr[i]
                [j];
            }
        }
        sumMin+=min;
    }
    cout << (sumMin*1.0)/sizeArray << endl;
    
    return 0;
}
1
18 / 17 / 22
Регистрация: 03.05.2016
Сообщений: 105
13.05.2016, 00:43 5
Лучший ответ Сообщение было отмечено Родион_Волков как решение

Решение

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
const int n = 5;
 
int main() 
{ 
    int min;
    int sum = 0;
 
    int arr[n][n];
 
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            arr[i][j] = 10 + rand()%90;
            cout << arr[i][j] << ' ';
        }
 
        cout << '\n';
    }
 
    for (int j = 0; j < n; j++)
    {
        min = arr[0][j];
 
        for (int i = 1; i < n; i++)
            if (arr[i][j] < min)
                min = arr[i][j];
 
        sum += min;
    }
 
    cout << "Aver = " << (double)(sum)/n << endl;
 
    return 0;
}
1
0 / 0 / 0
Регистрация: 12.05.2016
Сообщений: 15
13.05.2016, 21:32  [ТС] 6
Hilarior,
Вы мне очень помогли, спасибо огромное))
Но у меня появился вопрос, можно ли сделать это же задание, но с помощью динамических массивов, без использования функции???
Буду очень признателен
0
18 / 17 / 22
Регистрация: 03.05.2016
Сообщений: 105
13.05.2016, 21:45 7
Лучший ответ Сообщение было отмечено Родион_Волков как решение

Решение

Родион_Волков, а в чем проблема-то? я специально для этого и сделал константу n, а не вводил число

Добавлено через 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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
int main() 
{ 
    int n;
    int min;
    int sum = 0;
 
    cout << "Input n:\nN = ";
    cin  >> n;
 
    int **arr = new int*[n]; // n строк в массиве
    for (int i = 0; i < n; i++)
        arr[i] = new int [n]; // и n столбцов
 
    for (int i = 0; i < n; i++)
    {
        for (int j = 0; j < n; j++)
        {
            arr[i][j] = 10 + rand()%90;
            cout << arr[i][j] << ' ';
        }
 
        cout << '\n';
    }
 
    for (int j = 0; j < n; j++)
    {
        min = arr[0][j];
 
        for (int i = 1; i < n; i++)
            if (arr[i][j] < min)
                min = arr[i][j];
 
        sum += min;
    }
 
    cout << "Aver = " << (double)(sum)/n << endl;
 
    // высвобождение памяти отводимой под двумерный динамический массив:
    for (int i = 0; i < n; i++)
        delete [] arr[n];
 
    return 0;
}
1
13.05.2016, 21:45
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.05.2016, 21:45
Помогаю со студенческими работами здесь

Определить среднее арифметическое положительных элементов каждого столбца матрицы
дан двухмерный массив 5х6. Определить среднее арифметическое положительных элементов каждого...

Определить среднее арифметическое положительных элементов каждого столбца матрицы
Здравствуйте! Задача: дан двухмерный массив 5х6. Определить среднее арифметическое положительных...

Найти среднее арифметическое каждого столбца матрицы и перемножить их
Доброго времени суток! Я только начинаю изучения С++ и вот дали лабораторную на матрицы. Дана...

Найти среднее арифметическое для каждого столбца матрицы
Целое число задается в массиве A . Найдите среднее арифметическое для каждого столбца С++


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

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

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