Присвоить каждому диагональному значению разницу между суммами элементов соответствующих рядков и столбцов - 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)). Затем в каждой строке и столбце матрицы заменяется диагональное значение на полученную разницу. В конце выводится полученная матрица и разница.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4 из 5
Похожие ответы