Dziedziczenie - klasa abstrakcyjna

Klasa Wielomian

1. Utwórz klasę Gauss - reprezentującą funkcję Gaussa, zawierającą:

konstruktor inicjowany wartościami średniej i odchylenia

konstruktor kopiujący

przeciążony operator(double x)

przeciążoną metodę Wyswietl()

zaprzyjaźnioną funkcję przeciążającą operator << wypisujący komunikat do strumienia

2. Utwórz klasę Funkcja stanowiącą klasę bazową klasy Wielomian i klasy Gauss. Jakie cechy (metody, atrybuty) można uogólnić do klasy Funkcja?
Klasa Funkcja zawiera:

chronione pole zawierające nazwę (nazwa jest inicjowana przez konstruktor). Dodaj odpowiednie konstruktory do klas pochodnych umożliwiające zainicjowanie nazwy obiektu. Niech domyślną nazwą każdego obiektu będzie nazwa klasy (np. „Gauss” dla funkcji Gaussa).

metodę Wyswietl() wypisującą nazwę funkcji na standardowe wyjście

zaprzyjaźnioną funkcję przeciążająca operator <<

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

Przykładowy diagram klas UML