Logică și structuri discrete - Mulțimi: Exerciții

1. Mulțimi numărabile Produsul cartezian a n mulțimi numărabile e numărabil ? Argumentați (prin inducție sau prin reducere la absurd).

2. Listă de mulțimi Scrieți o funcție care ia ca parametru un întreg n și returnează o listă cu n mulțimi care conțin numerele de la 1 la n2: [{1,2,3};{4,5,6};{7,8,9}] (exemplu pentru n=3).
Scrieți o funcție care tipărește o mulțime de întregi în modul indicat (cu acolade și virgulă) și o funcție care tipărește orice listă (cu paranteze drepte și punct-virgulă), folosind ca parametru o funcție care știe să tipărească un element. Folosiți-le pentru a tipări rezultatul.

3. Selecție din k în k Scrieți o funcție care ia ca parametru o mulțime (tipul de elemente e la alegere) și un întreg pozitiv k și returnează mulțimea cu elementele de pe pozițiile k, 2k, 3k, ... (în ordine crescătoare și numărându-le de la 1). Folosiți fold și o pereche cu mulțimea acumulată și un contor, fără a transforma mulțimea în listă.

4. Perechi ordonate Scrieți o funcție care ia ca parametru o mulțime (cu tip de elemente la alegere) și returnează mulțimea perechilor de elemente distincte din mulțime, cu primul element mai mic decât al doilea (în total n(n-1)/2 perechi).

5. (opțional) Aranjamente de k din n. Scrieți o funcție care ia ca parametru o mulțime (tipul elementelor e la alegere) și un număr pozitiv k și returnează mulțimea aranjamentelor de k elemente (un aranjament e o listă de k elemente).


Marius Minea
Last modified: Sat Oct 24 11:30:00 EEST 2015