This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
laboratoare:10-prolog-introducere [2016/05/10 15:26] asistent [Variabile] |
laboratoare:10-prolog-introducere [2016/05/24 15:46] (current) mihai_dan.masala |
||
|---|---|---|---|
| Line 90: | Line 90: | ||
| H2 = 2. | H2 = 2. | ||
| </code> | </code> | ||
| - | In urma comenzii, primele doua elemente ale liste vor fi legate la variabilele **H1** si **H2**. Simbolul **'_'** (underscore) are un comportament similar cu cel din Haskell si anume cel de variabila anonima. Folosim acest simbol cand nu dorit sa legam ceva la o variabila. | + | In urma comenzii, primele doua elemente ale liste vor fi legate la variabilele **H1** si **H2**. Simbolul **'_'** (underscore) are un comportament similar cu cel din Haskell si anume cel de variabila anonima. Folosim acest simbol cand nu dorim sa legam ceva la o variabila. |
| Incercam in continuare sa calculam lungimea unei liste. \\ | Incercam in continuare sa calculam lungimea unei liste. \\ | ||
| Line 131: | Line 131: | ||
| - Definiti predicatul ''firstTwo(X,Y,L)'' care leaga variabilele ''X'', ''Y'' la primele doua elemente din lista ''L'', daca acestea exista. | - Definiti predicatul ''firstTwo(X,Y,L)'' care leaga variabilele ''X'', ''Y'' la primele doua elemente din lista ''L'', daca acestea exista. | ||
| - Definiti predicatul ''notContains(E,L)'' care verifica daca elementul la care este legat ''E'' nu exista in lista ''L''. | - Definiti predicatul ''notContains(E,L)'' care verifica daca elementul la care este legat ''E'' nu exista in lista ''L''. | ||
| - | - Definiti predicatul ''notcontains(E,L)''. | ||
| * Poate acest predicat sa fie folosit pentru a genera toate elementele care nu sunt in ''L''? Justificati raspunsul. | * Poate acest predicat sa fie folosit pentru a genera toate elementele care nu sunt in ''L''? Justificati raspunsul. | ||
| - Definiti predicatul ''unique(L1,L2)''. ''L2'' este lista ''L1'' fara elemente duplicate. | - Definiti predicatul ''unique(L1,L2)''. ''L2'' este lista ''L1'' fara elemente duplicate. | ||
| Line 156: | Line 155: | ||
| ==== Resurse (functii matematice) ==== | ==== Resurse (functii matematice) ==== | ||
| * [[http://www.swi-prolog.org/man/arith.html|Functii utile in Prolog]] | * [[http://www.swi-prolog.org/man/arith.html|Functii utile in Prolog]] | ||
| + | * [[http://www.learnprolognow.org/lpnpage.php?pageid=online| Tutorial Prolog]] | ||
| === Solutii === | === Solutii === | ||
| [[https://github.com/Programming-Paradigms/Labs/archive/master.zip|Solutii]] | [[https://github.com/Programming-Paradigms/Labs/archive/master.zip|Solutii]] | ||