Sunteți pe pagina 1din 3

Ministerul Educaiei al Republicii Moldova

Facultatea Calculatoare Informatic i Microelectronic


Catedra Informatica Aplicat

Lucrare de Laborator Nr.4


Sisteme de inteligen artificial

Chiinau 2012

1. Scopul lucrrii
S se familiarizeze cu conceptele de liste.
2. Un rezumat al teoriei
Lista - este o structura de date care este fie vid sau const din dou pri: cap i coad. Coada, la
rndul su, este ea nsi o list.
3.5.
Definii predicatul palindrom (Lista).
Lista se numete palindrom dac se citete la fel de la stnga la dreapta i de la dreapta la stnga.
De exemplu, [m, a, d, a, m].
Codul Surs :
DOMAINS
lista=integer*
PREDICATES
polindrom(lista)
reverse(lista,lista,lista)
CLAUSES
polindrom(L):-reverse(L,[],L).//control dac lista este indentic
reverse([],Acc,Acc).// Se efectueaza oprirea recursiei.
reverse([X|Rest],Acc,L):-reverse(Rest,[X|Acc],L).//Se extrage capul din prima list i
se
//
//introduce in form des stiv in lista
adoua.
Rezultatele programului :

Concluzie:
n urma efcturii lucrrii de laborator am facut cunotinte cu listele n prolog i anume cu
controlul unui cuvint dac este polindrom sau nu. Modul de lucru este parcurgerea acestei liste

din ambele pri ale ei. n caz c parcurgerea este indentic atunci esrte polindrom iar dac nu
atunci lista nu este polindrom

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