Część wspólna dwóch zbiorów

0

Muszę napisać program, który wypisuje wspólne elementy dwóch zbiorów. Na wejściu powinny być wprowadzone dane w taki sposób:
{1, 2, 3}*{3, 4, 5}
Ogólnie wiem jak wykonać sam algorytm, ale czy istnieje sposób, by tworzyło dwie osobne tablice o elementach 1,2,3 i 3,4,5 według takiego zapisu na wejściu?

0

Możesz np wczytać to jako string, i potem podzielić go na poszczególne liczby.

0

ale czy istnieje sposób, by tworzyło dwie osobne tablice o elementach 1,2,3 i 3,4,5 według takiego zapisu na wejściu?

A czemu nie?

Najpierw czytasz znaki aż dotrzesz do {. Potem dopóki następny niebiały znak nie będzie } ((cin>>ws).peek()) czytasz liczby. Nie powinno pomylić przecinka z podziałem dziesiętnym bo po angielsku podział dziesiętny to kropka. O ile pierwszy niebiały znak po liczbie to nie jest } musisz go zignorować - bo to przecinek (cin.ignore). To samo z drugą tablicą.

Wczytywane liczby zapisujesz do vector<int> jeśli chcesz do tablicy je zapisywać, gdyż dzięki temu możesz użyć metody push_back, a nie musisz znać z góry rozmiwaru tablicy ani bawić się w ręczną realokację.

1 użytkowników online, w tym zalogowanych: 0, gości: 1