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

UptoLike

Андрианова А.А., Исмагилов Л.Н., Мухтарова Т.М.
return in;
}
// функция вывода решения СЛАУ
template <class T>
void Slau<T>::PrintSolution(ostream& out)
{
if(!isSolved)
{
out << "Система несовместна" << endl;
return;
}
if(rang < n)
{
for(int i = 0; i < rang; i++)
{
out << "x" << (reoder[i] + 1) <<
" = " << x[i][0];
for(int j = 1; j <= n - rang; j++)
{
if(x[i][j] == 0.0)
continue;
if(x[i][j] > 0.0)
out << "+" << x[i][j] << "*x" <<
(reoder[rang + j - 1] + 1);
else
out << x[i][j] << "*x"
<< (reoder[rang + j - 1] + 1);
}
out << endl;
}
}
else
{
out << "(";
for(int i = 0; i < n - 1; i++)
out << x[0][i] << ", ";
out << x[0][n - 1] << ")" << endl;
}
}
// шаблон дружественного оператора вывода СЛАУ
template <class T>
ostream& operator <<(ostream& out, Slau<T>& ob)
{
for(int i = 0; i < ob.m; i++)
{
for(int j = 0; j < ob.n; j++)
out << ob.a[i][j] << "\t";
222
                               Андрианова А.А., Исмагилов Л.Н., Мухтарова Т.М.
          return in;
      }

      // функция вывода решения СЛАУ
      template 
      void Slau::PrintSolution(ostream& out)
      {
           if(!isSolved)
           {
                out << "Система несовместна" << endl;
                return;
           }
           if(rang < n)
           {
                for(int i = 0; i < rang; i++)
                {
                     out << "x" << (reoder[i] + 1) <<
                                              " = " << x[i][0];
                     for(int j = 1; j <= n - rang; j++)
                     {
                          if(x[i][j] == 0.0)
                                    continue;
                          if(x[i][j] > 0.0)
                               out << "+" << x[i][j] << "*x" <<
                                    (reoder[rang + j - 1] + 1);
                          else
                               out << x[i][j] << "*x"
                               << (reoder[rang + j - 1] + 1);
                     }
                     out << endl;
                }
           }
           else
           {
                out << "(";
                for(int i = 0; i < n - 1; i++)
                     out << x[0][i] << ", ";
                out << x[0][n - 1] << ")" << endl;
           }
      }

      // шаблон дружественного оператора вывода СЛАУ
      template 
      ostream& operator <<(ostream& out, Slau& ob)
      {
           for(int i = 0; i < ob.m; i++)
           {
                for(int j = 0; j < ob.n; j++)
                     out << ob.a[i][j] << "\t";

222