Не работает программа на обычном СИ
Нашла решение задачи на С. Условие такое:
Для заданной матрицы размером 4х4 найти такие k, что k-я строка матрицы совпадает с k-м столбцом. Найти сумму элементов в тех строках, которые содержат хотя бы один отрицательный элемент.
Проблема в том, что на размере 8х8 что-то ещё получается, а на 4х4 вообще ерунда.
Вот мой код:
#include <stdio.h>
int main(int argc, char* argv[])
{
int matrix[8][8] = {
{ 2, 7, 2, 7, 1, 4, 0, 3 },
{ 1, 0, 7, 6, 0, -8, 3, 5 },
{ 2, 7, 1, 8, 1, 4, 9, 3 },
{ 9, 2, 8, 5, 2, 0, 0, 6 },
{ 7, 1, 1, 3, 9, 3, 9, 1 },
{ 8, 2, 4, 9, 1, -6, 4, 9 },
{ 0, 3, 9, 0, 9, 4, 8, 8 },
{ 1, 8, 3, 2, 8, 2, 8, 0 }
};
int i, j, iSumm;
bool bFlag;
printf("k = ");
for (i = 0; i < 8; i++)
{
bFlag = true;
for (j = 0; j < 8; j++)
{
if (matrix[i][j] != matrix[j][i])
{
bFlag = false;
break;
}
}
if (bFlag) printf("%d ", i);
}
printf("\n\n");
for (i = 0; i < 8; i++)
{
bFlag = false;
iSumm = 0;
for (j = 0; j < 8; j++)
{
if (matrix[i][j] < 0) bFlag = true;
iSumm += matrix[i][j];
}
if (bFlag) printf("Сумма элементов строки #%d = %d\n", i, iSumm);
}
return 0;
}
Пожалуйста, если можно, то помогите ещё со второй задачей. Я тут сколько пыталась, ничего не получилось. Вот условие: проверить, все ли строки матрицы упорядочены по убыванию. Если нет, найти первую неупорядоченную строку и упорядочить.
Источник: Stack Overflow на русском