Присвоить каждому диагональному значению разницу между суммами элементов соответствующих рядков и столбцов - C (СИ)
Формулировка задачи:
Borland C++!
В матрице K[n,n] элементы главной диагонали равны 0, присвоить каждому диагональному значению разницу между сумами элементов соответствующих рядков и столбцов!
А вот дальше не знаю как =((
#include <iostream> int main() { int K[n][n]; int S=0; for (int i=0;i<n;i++) { for (int j=0;j<n;j++) cout<<endl;
Решение задачи: «Присвоить каждому диагональному значению разницу между суммами элементов соответствующих рядков и столбцов»
textual
Листинг программы
#include <iostream> #include <stdlib.h> #include <time.h> #define N 5 int main() { randomize(); int A[N][N],sum=0,raz=0; for (int i=0;i<N;i++) { for (int j=0;j<N;j++) { A[i][j]=rand()%3; cout<<A[i][j]<<" "; } cout<<endl; } for (int i=0;i<N;i++) { for (int j=0;j<N;j++) { sum+=A[i][j]; } raz-=sum; if (raz==-sum) raz=abs(raz); sum=0; } cout<<"\nРазница: "<<raz<<endl; cout<<"\nРезультат:\n"; for (int i=0;i<N;i++) { for (int j=0;j<N;j++) { if (i==j) A[i][j]=raz; cout<<A[i][j]<<" "; } cout<<endl; } }
Объяснение кода листинга программы
В этом коде генерируется случайная матрица 5x5, вычисляется сумма элементов каждой строки и столбца, затем находится их разница (raz). Если разница равна нулю, то в этом случае разница берется по модулю (abs(raz)). Затем в каждой строке и столбце матрицы заменяется диагональное значение на полученную разницу. В конце выводится полученная матрица и разница.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д