Объектно-ориентированное программирование на C++. Андрианова А.А - 209 стр.

UptoLike

Объектно-ориентированное программирование на С++
A[j][n-count_null_cols-1];
A[j][n-count_null_cols-1] = t;
}
// отражаем смену столбцов
// в перестановке
int t = reoder[i];
reoder[i] =
reoder[n-count_null_cols-1];
reoder[n-count_null_cols-1] = t;
count_null_cols++;
// далее пытаемся провести исключения
// с той же строкой
i--;
}
else
{
// нашли в столбце элемент, который
// может быть ведущим –
// меняем местами строки
double* t = A[i];
A[i] = A[k];
A[k] = t;
double p = B[0][i];
B[0][i] = B[0][k];
B[0][k] = p;
// далее пытаемся провести исключения
// с той же строкой
i--;
}
}
}
// вычисление ранга матрицы после
// проведения исключения
rang = m < n-count_null_cols ? m : n-count_null_cols;
// подсчет количества нулевых строк матрицы
int null_rows = m - rang;
// проверка на несовместность системы –
// если в нулевой строке
// свободный член не равен нулю
for(int i = rang; i < m; i++)
if(B[0][i] != 0)
{
isSolved = false;
return;
}
// формирование общего решения для совместной СЛАУ
// путем переноса свободных переменных в правую часть
209
                 Объектно-ориентированное программирование на С++
                          A[j][n-count_null_cols-1];
                    A[j][n-count_null_cols-1] = t;
                }
                // отражаем смену столбцов
                // в перестановке
                int t = reoder[i];
                reoder[i] =
                          reoder[n-count_null_cols-1];
                reoder[n-count_null_cols-1] = t;
                count_null_cols++;
                // далее пытаемся провести исключения
                // с той же строкой
                i--;
         }
         else
         {
                // нашли в столбце элемент, который
                // может быть ведущим –
                // меняем местами строки
                double* t = A[i];
                A[i] = A[k];
                A[k] = t;
                double p = B[0][i];
                B[0][i] = B[0][k];
                B[0][k] = p;
                // далее пытаемся провести исключения
                // с той же строкой
                i--;
         }
    }
}

// вычисление ранга матрицы после
// проведения исключения
rang = m < n-count_null_cols ? m : n-count_null_cols;
// подсчет количества нулевых строк матрицы
int null_rows = m - rang;
// проверка на несовместность системы –
// если в нулевой строке
// свободный член не равен нулю
for(int i = rang; i < m; i++)
     if(B[0][i] != 0)
     {
          isSolved = false;
          return;
     }
// формирование общего решения для совместной СЛАУ
// путем переноса свободных переменных в правую часть

                                                             209