Sunteți pe pagina 1din 2

Listă de programe

1. Rezolvarea ecuaţiei de gradul 2.


2. Scrieţi un predicat Prolog care să calculeze pentru n dat, valoarea elementului xn
din şirul:
xn = 1 + 21 + 31 + … + n1
3. Scrieţi un predicat Prolog care calculează valorile funcţiei lui Ackermann:
n + 1 , dacă m = 0;
ac: N × N → N, ac(m, n) = ac(m-1, 1) , dacă n = 0;
ac(m – 1, ac(m, n - 1)), altfel
4. Definiţi un predicat Prolog care să calculeze valoarea funcţiei lui Fibonacci
într-un punct (f(1) = f(2) = 1; f(n) = f(n - 2) + f(n - 1) pentru n ≥ 3).
5. Scrieţi un predicat Prolog care să calculeze valorile funcţiei f în punctele m şi n,
unde f este definită astfel:
nm, daca n < m
f: N × N → N, f(m, n) =
m*n, altfel.
6. Să se verifice dacă un număr k este divizor al unui număr n. Construiţi apoi un
predicat Prolog care să afişeze toţi divizorii unui număr natural n.
7. Scrieţi un predicat Prolog care să calculeze valorile funcţiei f în punctele m şi n,
unde funcţia f este definită astfel:
m * (n!), daca n < m
f: N × N → N, f(m, n) =
n - m, altfel.
8. Definiţi un predicat Prolog care să calculeze media numerelor unei liste. 9.
Scrieţi un predicat care să determine câte numere pozitive se găsesc într-o listă
dată.
10. Calculaţi suma pătratelor elementelor unei liste.
11. Determinaţi cu ajutorul unui predicat Prolog maximul unei liste. 12. Realizaţi un
predicat Prolog care să determine poziţia pe care se găseşte minimul unei liste.
13. Să se compare lungimile pentru două liste date.
14. Să se inverseze o listă.
15. Să se şteargă toate apariţiile unui element dintr-o listă.
16. Determinaţi sublista care să conţină numai poziţiile 2, 4, 6, … din lista iniţială.
17. Definiţi două predicate Prolog care să testeze dacă o listă este prefix al unei alte
liste, respectiv sufix al unei alte liste.
18. Scrieţi un predicat Prolog care să verifice dacă două elemente sunt consecutive
într-o listă.
19. Verificaţi dacă elementele unei liste pot forma o mulţime.
20. Scrieţi un predicat Prolog care să realizeze eliminarea duplicatelor dintr-o listă
dată.
21. Dându-se două liste, să se determine dacă prima este sublista celei de a doua.
22. Scrieţi un program pentru calcularea produsului scalar a doi vectori. 23. Să
se realizeze interclasarea elementelor a două liste ordonate crescător.
24. Având o listă de numere întregi, să se împartă aceasta în două liste: una care
conţine numerele pare şi una care le conţine pe cele impare.
25. Să se adauge un element la sfârşitul unei liste.
26. Dându-se o listă şi un număr întreg pozitiv i, să se găsească elementul aflat pe
poziţia i în listă.
27. Având date o listă şi un element care apaţine acestei liste, să se specifice pe ce
poziţie este situat elementul în lista dată.
28. Se dă o listă: să se obţină două liste din aceasta astfel încât prima din ele să
conţină elementele de pe poziţiile pare iar a doua pe cele de pe poziţiile impare.

S-ar putea să vă placă și