ZYVхорошо учту
Добавлено спустя 4 минуты 29 секунд:
Lotos
я не стал перегружать оператор сравнения(компилятор почему-то ругался при вызове в главной программе).вот я реализовал проверки с помощью функций. на равенство вроде работает нормально, а функция grow не совсем.посмотрите что не так?
Код:
friend bool equal (polinom &p,polinom&q);
friend bool grow (polinom &p,polinom&q);
bool equal (polinom &p,polinom&q)
{
if (p.n!=q.n) return false;
int i;
i=p.n;
while (i>=0)
{
if (p.a[i]==q.a[i])
{
i--;
}
else return false;
}
return true;
}
bool grow (polinom &p,polinom&q)
{
if (p.n>q.n) return true;
if (p.n==q.n)
{ int i;
i=p.n;
while (i>=0)
{
if (p.a[i]>=q.a[i])
{
i--;
}
else return false;
}
return true;
}
}
и еще хотел узнать вообще по какому принципу мы сравниваем два полинома?сперва проверяем степени, а потом коэффициенты?а что делать в случае сравнения например 6x^3+2x^2+3x^1+4 и 4x^3+5x^2+6x^1+2? я затрудняюсь ответить что из них больше
Добавлено спустя 21 минуту 23 секунды:и еще как лучше реализовать деление полиномов если в виде булевской функции то с какими параметрами
Код:
friend bool divide (polinom &a, polinom &b);
так?
Код:
friend bool divide (polinom &a, polinom &b,polinom &res, polinom &ost);
в последнем случае я не понимаю как будет происходить вызов этой функции?