Практикум по курсу "Алгоритмизация и программирование". Часть 2. Андрианова А.А - 23 стр.

UptoLike

. Практикум по курсу «Алгоритмизация и программирование». Часть 2
получает адрес исходной матрицы и ее размеры, которые передаются по
ссылке, поскольку их значения могут измениться.
// определение функции удаления строк только
// с нулевыми элементами
void RemoveNullRowMatrix(int& m, int& n, float** a)
{
int i,j,t;
// « » определение количества ненулевых строк
int m1=m-CountNullRows(m,n,a);
if(m1==0)
{
// « », если все строки матрицы нулевые
// уничтожаем матрицу
for(i=0;i<m;i++)
delete [] a[i];
delete [] a;
m=0;
n=0;
return;
}
// вводим переменную для хранения
// количеств а удаленных «нулевых» строк
t=0;
for(i=0;i<m;i++)
if(IsNullRow(n,a[i]))
{
t++;
delete [] a[i];
}
else
a[i-t]=a[i];
m=m1;
}
Задача 5. Написать функцию сложения двух многочленов.
Многочлен степени n можно представить в виде массива размерности
(n+1). Элемент массива с индексом i хранит коэффициент слагаемого, степень
которого равна i.
Правила суммирования многочленов можно сформулировать следующим
образом:
1) если степени суммируемых многочленов не равны, степень многочле-
23
            .       Практикум по курсу «Алгоритмизация и программирование». Часть 2
получает адрес исходной матрицы и ее размеры, которые передаются по
ссылке, поскольку их значения могут измениться.

   // определение функции удаления строк только
   // с нулевыми элементами
   void RemoveNullRowMatrix(int& m, int& n, float** a)
   {
         int i,j,t;
         // определение количества «ненулевых» строк
         int m1=m-CountNullRows(m,n,a);
         if(m1==0)
         {
              // если все строки матрицы «нулевые»,
              // уничтожаем матрицу
              for(i=0;i