Napište funkce pro práci s množinami. Pro reprezentaci množin použijte vhodný odvozený datový typ mnozina definovaný pomocí typedef (pole, struktura, ...).
Pro takto definované množiny napište funkce:
int vloz_prvek(mnozina M,int i) – Tato funkce vloží prvek i do množiny M.
int odeber_prvek(mnozina M,int i) – Tato funkce odeber prvek i z množiny M.
mnozina prunik(mnozina A, mnozina B) – Tato funkce vrátí průnik množin A a B.
mnozina sjednoceni(mnozina A, mnozina B) – Tato funkce vrátí sjednocení množin A a B.
mnozina rozdil(mnozina A, mnozina B) – Tato funkce vrátí rozdíl množin A a B.
Dále vytvořte funkci:
mnozina spocitej(char* r, ...);
která vrátí množinu, jež vznikne aplikací operací, které jsou zadány v řetězci r na množiny, které jsou zadány jako proměnný počet parametrů této funkce. V řetězci r se mohou vyskytovat tyto znaky:
p – pro průnik dvou množin
s – pro sjednocení dvou množin
r – pro rozdíl dvou množin.
Příklad funkce main: main() { mnozina A, B, C; A=vytvoreni(); vloz_prvek(&A,5); vloz_prvek(&A,12); vloz_prvek(&A,8); vloz_prvek(&A,7); vloz_prvek(&A,14); vloz_prvek(&A,20);
printf("Mnozina A: \n"); vypis(A);
if(odeber_prvek(&A,20)==2) printf("Prvek neni v mnozine.\n"); printf("Mnozina A po odebrani prvku 20: \n");
vypis(A);
printf("Pokus o odebrani prvku 4: \n"); if(odeber_prvek(&A,4)==2) printf("Prvek neni v mnozine.\n");
B=vytvoreni(); vloz_prvek(&B,5); vloz_prvek(&B,14); vloz_prvek(&B,9); vloz_prvek(&B,7); vloz_prvek(&B,19);
printf("Mnozina B: \n"); vypis(B);
C = sjednoceni(A, B); printf("Sjednoceni mnozin A a B: \n"); vypis(C);
C = prunik(A, B); printf("Prunik mnozin A a B: \n"); vypis(C);
C = rozdil(A, B); printf("Rozdil mnozin A a B: \n"); vypis(C);
C = spocitej("psr",A,B,B,A); printf("A prunik B sjednoceno B rozdil A: \n"); vypis(C); }
Fórum › C / C++
Funkce pro práci s množinami
Zjistit počet nových příspěvků
Přidej příspěvek
Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
Uživatelé prohlížející si toto vlákno
Uživatelé on-line: 0 registrovaných, 111 hostů
Podobná vlákna
Nefunguji funkce pro praci s db — založil tribalcz
[C#] Funkce na práci s Ini soubory — založil CZechBoY
C# knihovny pro praci s webkamerou — založil Tony
Jazyk pro práci na internetu — založil dragon124
Rada pro semestrální práci — založil kubicka
Moderátoři diskuze