Edit this page Backlinks This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. 1. Scrieti o functie in Haskell care primeste doua functii $math[f], $math[g] si un numar natural $math[k] si verifica daca functiile au aceeasi valoare pe intervalul de numere naturale $math[0, \ldots , k]. 2. Scrieti un predicat in Prolog care primeste un numar ''k'' si o lista ''L'' si implementeaza **rotatia** cu ''k'' pozitii a listei ''L''. Rotatia listei ''[1,2,3,4,5,6,7,8,9]'' cu ''3'' pozitii este ''[4,5,6,7,8,9,1,2,3]''. 3. Dati un exemplu de lambda-expresie reductibila care poate contine o secventa $math[e \Rightarrow e_1 \Rightarrow \ldots \Rightarrow e_n \Rightarrow e] de reduceri. 4. Folosind tipul de date ''Query'', definiti o interogare care selecteaza ocupatia pentru toti utilizatorii care au varsta intre 15 si 45 sau au numele formate din cuvinte care incep cu litera ''Q'' sau litera ''F''. 5. Definiti tipul de date ''Prop'', care codifica propozitii dupa urmatoarele reguli: * o propozitie este formata dintr-un **subiect** si un **predicat** * un subiect poate fi **un nume propriu** sau un nume propriu urmat de un **adjectiv**. * un nume propriu poate fi unul **sau mai multe** string-uri care incep cu o majuscula. * un predicat poate fi unul din string-urile: ''priveste'', ''alearga'', ''mananca''. * un adjectiv poate fi orice string. Scrieti o functie care primeste un ''String'', si intoarce un obiect ''Prop''. Puteti presupune ca string-ul este format corect. 6. Scrieti un predicat in Prolog care primeste o valoare naturala ''K'' si o lista ''L'' si intoarce o lista cu **toate** sub-listele de dimensiune ''K'' formate cu elemente din ''L'', si **pastrand ordinea** acestora din ''L''.