Dziedziczenie

1. W klasie Wielomian zaimplementuj metodę ObliczWartosc, która dla danej w argumencie wartości rzeczywistej x zwróci wartość wielomianu.

2. Utwórz klasę pochodną klasy Wielomian o nazwie Linia reprezentującą wielomian stopnia pierwszego y=ax+b .

Zadeklaruj i zdefiniuj konstruktor:

  • kopiujący
  • domyślny (inicjuje linię y=0)
  • posiadający 2 argumenty rzeczywiste definiujące linię na płaszczyźnie y=ax+b
  • posiadający argumenty określające dwa punkty na płaszczyźnie. Linia przechodzi przez oba punkty.

Dla klasy Linia zaimplementuj poniższe operacje:

Punkt PunktPrzeciecia(const Linia &l) const;
double MiejsceZerowe();
Linia Prostopadla(Punkt x);              // linia prostopadla przechodzaca przez punkt x

Powyżej używany jest typ Punkt (obiekt tego typu określa punkt na płaszczyźnie). Jak powinna wyglądać definicja tego typu?

2. Utwórz klasę pochodną klasy Wielomian o nazwie Parabola.

Zaimplementuj konstruktor:

  • kopiujący
  • inicjujący parabolę trzema wartościami a,b i c, które definiują parabolę y=ax^2+bx+c. Ustaw wartości domyślne argumentów a,b,c=0.

Zaimplementuj metodę:

  • zwracającą położenie ekstremalnej wartości (minimum lub maksimum funkcji)
  • zwracającą ilość pierwiastków (miejsc zerowych) oraz ich wartości

3. Napisz program testujący działanie zaimplementowanych metod.

Przykładowy diagram klas UML