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

Найти сумму элементов матрицы, расположенных выше главной диагонали и ниже побочной диагонали

10.03.2019, 19:36. Показов 8472. Ответов 5

Никак не могу написать код.
Есть небольшие наброски ниже, если кто сможет помочь - заранее спасибо!

Дана целочисленная квадратная матрица размера n х m (n, m вводятся). Значения элементов матрицы задаются случайным образом в диапазоне [-99, 99]. Разработать программу, позволяющую находить сумму элементов матрицы, расположенных выше главной диагонали и ниже побочной диагонали.

Это получается, само построение матрицы, но я никак не могу понять, как сделать именно ввод размера матрицы (n, m).
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
{ 
const int n=12; 
int a[n][n]; 
//Ввод элементов 
for (int i=0;i<n;i++) 
{ 
for (int j=0;j<n;j++) 
{ 
cout « "Vvedite element a[" « i « "][" « j « "] "; 
cin » a[i][j]; 
cout « endl; 
} 
} 
//Вывод элементов 
for (int i=0;i<n;i++) 
{ 
for (int j=0;j<n;j++) 
{ 
cout « а[i][j] « " "; 
} 
cout « endl; 
} 
 
return 0; 
}
Здесь функции для нахождения суммы элементов матрицы, расположенных выше главной диагонали и ниже побочной диагонали.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
int Sum_above_main_diagonal(int **matrix, int rows, int cols) 
{ 
int sum = 0; 
int row, col; 
for (row = 0; row < rows - 1; row++) 
for (col = row + 1; col < rows; col++) 
sum += matrix[row][col]; 
return sum; 
} 
 
int Sum_below_anti_diagonal(int **matrix, int rows, int cols) 
{ 
int sum = 0; 
int row, col; 
 
for (int row = 1; row < rows; row++) 
for (int col = cols - row; col < cols; col++) 
sum += matrix[row][col]; 
return sum;
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.03.2019, 19:36
Ответы с готовыми решениями:

Найти сумму элементов матрицы, расположенных выше главной диагонали и ниже побочной диагонали
не соображу В среде MS Visual C++ разработать программу, которая формирует матрицу размером n х n...

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

Найти max среди элементов матрицы, лежащих ниже побочной диагонали, и min среди элементов выше главной диагонали
2. В матрице n-го порядка найти максимальный среди элементов, лежащих ниже побочной диагонали, и...

Найти максимум среди элементов матрицы ниже главной и выше побочной диагонали
Дана квадратная матрица целых чисел размером N&lt;=12. Заполнить матрицу случайными числами от 0 до...

5
170 / 122 / 61
Регистрация: 06.02.2015
Сообщений: 300
10.03.2019, 19:41 2
Цитата Сообщение от Arch1ePlay Посмотреть сообщение
но я никак не могу понять, как сделать именно ввод размера матрицы (n, m).
int n=0;
int m=0;
cin >> n;
cin>> m;

потом в своих циклах заменить одну из n на m
0
Модератор
Эксперт С++
12470 / 10025 / 6034
Регистрация: 18.12.2011
Сообщений: 26,833
10.03.2019, 19:42 3
См. Образцы (шаблоны) программ для типовых задач
0
7421 / 5016 / 2890
Регистрация: 18.12.2017
Сообщений: 15,694
11.03.2019, 03:18 4
Цитата Сообщение от Arch1ePlay Посмотреть сообщение
Дана целочисленная квадратная матрица размера n х m
квадратная обычно задаётся как n x n. уточните
0
5 / 3 / 2
Регистрация: 07.03.2021
Сообщений: 6
07.03.2021, 17:33 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
#include<iostream>
#include <cstdlib>
using namespace std;
 
int main() {
    setlocale(0, "rus");
    srand(time(NULL));
 
    const int N = 4;
    int mas[N][N];
    int sum = 0;
    int i = 0;
    int j = 0;
 
    for (int i = 0;i < N;i++) {
        for (int j = 0;j < N;j++) {
            mas[i][j] = rand() % 9 + 1;
            cout << mas[i][j] << ' ';
        }
        cout << endl;
    }
 
    cout << endl;
 
    for (i = 0;i < N-1;i++) {
        for (j = i+1;j < N;++j) {
            sum+=mas[i][j];
        }
    }
    cout << sum;
 
    return 0;
}
0
Эксперт CЭксперт С++
3888 / 2272 / 1238
Регистрация: 14.12.2018
Сообщений: 4,357
Записей в блоге: 1
07.03.2021, 22:02 6
Цитата Сообщение от Arch1ePlay Посмотреть сообщение
Дана целочисленная квадратная матрица
Если матрица квадратная, то я предлагаю код ниже, надеюсь работает хорошо у вас:
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
#include <iostream>
#include <iomanip>
using namespace std;
 
int main()
{
    int N;
    cout << "Введите количество элементов матрицы:";
    cin >> N;
    int i, j;
    int** arr = new int*[N];
    for (i = 0; i < N; i++)
        arr[i] = new int[N];
    cout << "Введите элементы матрицы:" << endl;
    long long sum = 0;
    for (i = 0; i < N; i++)
        for (j = 0; j < N; j++)
        {
            cout << "arr[" << i << "][" << j << "] = ";
            cin >> arr[i][j];
        }
    cout << "Введенная матрица:" << endl;
    for (i = 0; i < N; i++)
    {
        for (j = 0; j < N; j++)
        {
            cout << setw(10) << arr[i][j];
            if (j > i && i + j > N - 1)  // Условие для элемента, расположенного выше главной диагонали и ниже побочной диагонали
                sum += arr[i][j];
        }
        cout << endl;
    }
    cout << "Сумма элементов, расположенных выше главной диагонали и ниже побочной диагонали: " << sum << endl;
    for (i = 0; i < N; i++)
        delete[] arr[i];
    delete[] arr;
    system("pause");
    return 0;
}
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.03.2021, 22:02
Помогаю со студенческими работами здесь

Найти сумму элементов матрицы расположенных ниже побочной диагонали
Найти сумму элементов матрицы расположенных ниже побочной диагонали

Произведение элементов данного массива, расположенных одновременно выше главной и ниже побочной диагонали
Помогите, пожалуйста, я не пойму почему не работает. для данного целочисленного массива...

Найти минимальный из элементов ниже главной и выше побочной диагонали и поменять его местами с первым элементом матрицы
Найти минимальный из элементов в области ,ниже главной и выше побочной диагонали и поменять его...

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


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

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

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