Multimi finite, folosind liste simplu inlantuite
- clasa multime sa contina metode de: transformare a unei liste inlantuite in multime, prin eliminarea duplicatelor din respectiva lista; supraincarcare a operatorilor << si >>; reuniune a doua multimi, implementata prin supraincarcarea operatorului +; intersectie a doua multimi, implementata prin supraincarcarea operatorului *; diferenta dintre doua multimi, implementata prin supraincarcarea operatorului -;
- sa se creeze o clasa pereche de numere intregi si o clasa multime de perechi de numere intregi reprezentata ca lista inlantuita de obiecte de tip clasa pereche; clasa multime de perechi sa fie prietena a clasei pereche de intregi; fiecare dintre clasele pereche si multime de perechi sa contina supraincarcari pentru << si >>;
- sa se scrie o functie care efectueaza produsul cartezian a doua multimi de intregi, date ca instante ale clasei multime de intregi, si il memoreaza intr-o instanta a clasei multime de perechi de intregi;
- Clasa de lista inlantuita trebuie implementata separat de clasele de multimi. De asemenea, pentru nodurile listei inlantuite se recomanda implementarea unei clase separate, anume clasa Nod.
- Clasele trebuie implementate folosind alocare dinamica.