R
Rpp
Помогите плиз ее исправить!
Дана целочисленная квадратная матрица. Определить :
1 сумму элементов в тех столбцах , которые не содержат отрицательных элементов;
2 минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы
Дана целочисленная квадратная матрица. Определить :
1 сумму элементов в тех столбцах , которые не содержат отрицательных элементов;
2 минимум среди сумм модулей элементов диагоналей, параллельных побочной диагонали матрицы
C++:
#include <iostream>
using namespace std;
void main()
{
setlocale(LC_ALL, ".1251");
int a[100][100], b[100], k;
cout << "Введите размерность квадратной матрицы= ";
cin >> k;
for (int i = 0; i < k; i++)
{
for (int j = 0; j < k; j++)
{
a[j] = rand() % 19 - 9;
}
}
//Вывод
for (int i = 0; i < k; i++)
{
cout << "\n";
for (int j = 0; j < k; j++)
{
cout << a[j] << " ";
}
}
//Сумму элементов в тех строках, которые не содержат отрицательных элементов
cout << "\n";
int sum;
for (int i = 0; i < k; i++)
{
sum = 0;
for (int j = 0; j < k; j++)
{
if (a[j]>0)
{
sum = sum + a[j];
}
else {
break;
}
}
cout << "\nСумма элементов в строке " << i + 1 << "= " << sum;
}
//Минимум среди сумм модулей элементов диагоналей, паралельных побочной диагонали матрицы.
cout << "\n";
for (int i = 0; i < k; ++i)
{
int index = i;
sum = 0;
for (int j = k-1; j > -1; --j)
{
cout << "Элемент[" << index+1 << "][" << j+1 << "]";
sum += a[index++][j];
if (index == k)
index = 0;
if (j != 0)
cout << " + ";
}
b = abs(sum);
cout << " = " << sum << "\n";
}
int min = b[0];
sum = 0;
for (int i = 1; i < k; ++i)
{
if (min > b)
{
min = b;
sum = b;
}
else
{
sum = min;
}
}
cout << "\n";
cout << "Диагональ имеет min по модулю сумму=" << sum << endl;
cout << "\n";
system("PAUSE");
}
Последнее редактирование: