Примером полинома может быть: p(x) = 3 * x^2 - 2 * x + 1
Пример рационального числа (с многочленами):
r(x)=p1(x)/p2(x) =(3x^2+2x+1)/(14,5x^2+2x+3)
Каждый многочлен будет представлен как экземпляр класса Polynomial. Каждый экземпляр полиномиального типа определяется его “максимальной степенью”. В приведенном выше примере многочлен может быть представлен экземпляром степени 2 и выше.
Рациональное число (экземпляр рационального класса) должно быть представлено двумя многочленами (которые представляют “числитель” и “знаменатель”).
Спроектируйте и разработайте необходимые классы (Полиномиальный и рациональный) и разделите их объявление и определения в следующих файлах (polynomial.h, polynomial.cpp, rational.h, rational.cpp).
Дополнительные требования:
Избегайте дублирования кода.
Степень многочлена не может быть изменена после того, как объект уже создан. Вот почему эта степень должна быть определена как “const”.
Используйте “const” и “references” в соответствующих местах.
Класс "Polynomial” должен хранить “максимальную степень” всех определенных полиномиальных объектов. Это значение должно быть доступно для печати в любой момент времени.
НЕ СЛЕДУЕТ ИСПОЛЬЗОВАТЬ ТИП МОНОМА КЛАССА A! У ПОЛИНОМИАЛЬНОГО КЛАССА НЕ ДОЛЖНО ИМЕТЬ ОБЪЕКТЫ ЛЮБОГО ДРУГОГО КЛАССА!