Информатика, вопрос задал XxXJa6uArXxX , 1 год назад

Программирование C++.
Дана целочисленная прямоугольная матрица. Найти разность сумм элементов на главной и побочной диагоналях.

Ответы на вопрос

Ответил prleha
1
матрица не может быть прямоугольной так иначе будет не понятно что подразумевается под диагональю
#include<iostream>
#include<vector>
int main() {
int n;
std::cin>>n;
std::vector<std::vector<int>> matrix(n);
for (int i =0;i<n;++i) {
    for (int j =0;j<n;++j) {
        int elem;
        std::cin>>elem;
        matrix[j].push_back(elem);
    }
}
int first_diag = 0;
int second_diag = 0;
for (int i = 0;i<n;++i) {
    first_diag+=matrix[i][i];
    second_diag += matrix[i][n-i-1];
}
int res = 0;
res = first_diag - second_diag;
std::cout<<res;
}



XxXJa6uArXxX: странно, все равно 0
prleha: там все нормально выводит
XxXJa6uArXxX: для больших матриц нормально срабатывает, а если число строк/столбцов равно 3, то показывает 0
XxXJa6uArXxX: начиная с 5 нормально робит
XxXJa6uArXxX: а нет ссори, я понял в чем дело
XxXJa6uArXxX: Спасибо)
Новые вопросы