Предмет: Информатика, автор: evdokimov1997

Заполните массив n на m,где n=m,случайными целыми числами от 1 до 100.Вывести на экран.Найти разницу сумм элементов диагоналей массива и вывести абсолютное значение на экран.(С++)

Ответы

Автор ответа: snow99
2

#include <iostream>

#include <stdlib.h>

#include <cmath>

using namespace std;

int main()

{

const int n = 5;

int a[n][n];

for (int i=0; i < n; i++)

for (int j=0; j < n; j++)

a[i][j] = rand()%100; // заполнение случайными целыми числами


cout << "Massiv: \n";

for(int i = 0; i < n; i++)

{for (int j=0; j < n; j++)

{ cout << a[i][j] << "\t";} // вывод массива на экран

cout << endl;}

int sum1=0;

int sum2=0;

for(int i=0; i< n; i++)

for(int j=0; j< n; j++)

{ if (i == j)

sum1 += a[i][i]; // сумма элементов главной диагонали

if (i == n - j - 1)

sum2 += a[i][j]; // сумма элементов побочной диагонали

}

cout <<"\nSumma elementov glavnoi diag = "<< sum1 << endl;

cout <<"Summa elementov pobochnoi diag = " << sum2 << endl;

cout <<"Raznost summ = " << abs(sum1-sum2) << endl; // выводим абсолютное значение разности сумм

return 0;

}



Giammy: У вас "рандомная" генерация дает одни и те же значения.
Giammy: Добавьте #include
Giammy: < ctime >
Giammy: И строку srand(time(0));
Giammy: Хотя, если это на одноразовое использование - сойдет.
snow99: А, точно, позабыл
Интересные вопросы
Предмет: Русский язык, автор: faritvarin