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

С++ матрица сумма элементов главная и побочной диагонали

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

Я написал вот такой код:

int Matrix::CalculateS(void)
{
S = 0;
for (int i = 0; i<(N); i++)
{
for (int j = 0; j<(M); j++)
{
if ((i==j) & (i+j==N+1))
{
S += MatrixData[i][j];
}
}
}
return S;

Но он выдает белеберду. В чем ошибка подскажите?
Ответы:
для диагоналей не нужны вложенные циклы - накладные расходы только: for (int i = 0; i<N; i++) s+=MatrixData[i][i]+MatrixData[i][N-i+1];


15 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.