Найти сумму элементов главной диагонали заданной матрицы - C (СИ)
Формулировка задачи:
Дана квадратная матрица A порядка M. Найти сумму элементов ее главной диагонали, то есть диагонали,содержащей следующие элементы:A1;1,A2;2,A3;3,: : :,AM;M. на СИ
Решение задачи: «Найти сумму элементов главной диагонали заданной матрицы»
textual
Листинг программы
int i, j, M;
float A[10][10], fRes;
M = 5;
fRes = 0;
// Матрица заполняется чем-нибудь для примера
for(i = 0; i < M; i++)
{
for(j = 0; j < M; j++)
{
A[i][j] = i + j;
printf("A[%d][%d] = %f ", i, j, A[i][j]);
}
printf("\r\n");
}
// Подсчёт суммы значений элементов главной диагонали
for(i = 0; i < M; i++)
{
fRes = fRes + A[i][i];
}
// Вывод результата
printf("fRes = %f\r\n", fRes);
Объяснение кода листинга программы
- Объявлены переменные:
- i, j - циклы для прохода по элементам матрицы;
- M - количество элементов главной диагонали;
- A[10][10] - матрица размером 10x10;
- fRes - переменная для хранения суммы элементов главной диагонали.
- Задано значение переменной M равное 5.
- Матрица заполняется значениями i+j.
- Выполняется два вложенных цикла:
- Первый цикл перебирает строки матрицы (i).
- Второй цикл перебирает столбцы матрицы (j).
- Значение элемента матрицы A[i][j] присваивается сумме i и j.
- Значение элемента матрицы A[i][j] выводится на экран.
- После завершения второго вложенного цикла выводится символ новой строки.
- Подсчитывается сумма элементов главной диагонали:
- Сумма элементов главной диагонали присваивается переменной fRes.
- Выводится значение переменной fRes.