You are on page 1of 6

MFCB_MFC_AFC _Sisteme_expert_de_gestiune

TRUE/FALSE

1) Sectiunea predicates (predicate) este destinata pentru crearea sabloanelor tipurilor de date
definite de catre utilizator si folosite în sectiunea clauzelor.

2) Clauzele Prolog sunt fapte si reguli.

3) Sectiunea database (baza de date) este folosita pentru declararea si utilizarea faptelor (sub
forma de baza de date interna) ce trebuie prelucrate (adaugate, modificate sau sterse) în timpul
executiei unui program.

4) Toate sectiunile programului în limbajului Prolog pot fi utilizate de mai multe ori în cadrul
aceluiasi program.

5)
Raspundeti cu adevarat (TRUE) sau fals (FALSE)
“Nu exista predicate de aritate 3 în Prolog”.

6) Raspundeti cu adevarat (TRUE) fals (FALSE).


“Un arbore este o structura de date liniara.”

7) Raspundeti cu adevarat (TRUE) sau fals (FALSE):


„O baza de date interna este declarata în sectiunea database; definirea bazei de date
interne revine la descrierea structurii faptelor care o compun.”

8) Raspundeti cu adevarat (TRUE) fals (FALSE).


“Actualizarea unei baze de date externe poate fi realizata doar daca anterior acestei
operatii baza de date este indexata.”

9) Sistemul AESOP a fost validat prin testarea relatiilor dintre deciziile dezvoltate de
sistem si deciziile expertilor in domeniu.

MULTIPLE CHOICE

1) Care dintre urmatoarele tipuri de date nu este specifica limbajului Prolog?


1 char
2 symbol
3 text
4 string
5 integer

2) Care este fragmentul de program Prolog corect?

1 domains
nume,den,tip=text
predicates
firma(den,tip)
asociat1(nume,den)
asociat2(nume,den)
patronat(nume,nume,den)

2 domains
nume,den,tip=symbol
predicate
firma(den,tip)
asociat1(nume,den)
asociat2(nume,den)
patronat(nume,nume,den)
3 domain
nume,den,tip=symbol
predicates
firma(den,tip)
asociat1(nume,den)
asociat2(nume,den)
patronat(nume,nume,den)

4 domains
nume,den,tip=symbol
predicates
firma(den,tip)
asociat1(nume,den)
asociat2(nume,den)
patronat(nume,nume,den)

3) Care dintre afirmatiile de mai jos sunt false?

A. Pot fi definite predicate de aritate 3


B. “a” este o variabila Prolog
C. Scopurile pot fi interne si externe
D. Un predicat predefinit este obligatoriu redefinit în sectiunea predicates

1 A+B+C
2 B+D
3 C+D+A
4) Care dintre urmatoarele afirmatii este falsa?

1 Un program Prolog contine maxim 6 sectiuni


2 Sectiunea constants este obligatorie în orice program Prolog
3 O clauza Prolog este fie fapt Prolog, fie regula Prolog
4 Toate predicatele care apar în clauses sunt fie de sistem, fie definite în sectiunea predicates

5) Fie programul Prolog


predicates
f(real,real)
clauses
f(X,1):-X<5,!.
f(X,7):-X<12,!.
f(_,0).
Atunci, scopul f(8,T) furnizeaza,
1 T=3 3 T=0

2 T=7

6) Fie codul sursa Prolog,


domains
lista=real *
predicates
nrel(lista,integer)
clauses
nrel([],0).
nrel([_|T],N):-
nrel(T,M),
N=M+1.
Daca în sectiunea scop extern este efectuata interogarea nrel([3,3,3,3],T), atunci
sistemul raspunde cu

1 T=2, 1 Solution 4 T=3, 1 Solution


2 No 5 T=4, 1 Solution
3 Yes

7) Fie codul sursa Prolog


domains
lista=real *
predicates
pppp(real,lista,lista)
clauses
pppp(X,L,[X|L]).
Daca în sectiunea scop extern este efectuata interogarea pppp(5,[3,3,3,3],L),
atunci sistemul raspunde cu
1 Yes 3 X=5, 1 Solution
2 No 4 L=[5,3,3,3,3], 1 Solution

8) Prin executia retractall(identificator_predicat(lista_argumente)


[,identificator_baza_date]) se realizeaza:

1 extragerea tuturor faptelor Prolog din baza de date externa


2 extragerea tuturor faptelor Prolog care unifica cu
identificator_predicat(lista_argumente)
3 extragerea tuturor faptelor Prolog din baza de date interna

YES/NO

1) Calculul predicatelor de ordinul întâi este denumit si logica predicatelor de ordinul întâi si are
la baza functia propozitionala a predicatului.

2) Argumentele unui predicat sunt argumente de baza (obligatorii) si argumente optionale.

3) Urmatoarea definitie de predicat este corecta:


predicates
sort(lista,lista)

4) Urmatoarea definitie de constanta este corecta:


constants
nume_patron=”Ionescu Ion

5) Urmatoarea constructie este corecta:


/*sirul de caractere nu este terminat corect*/

6) Urmatoarea constructie este corecta:


domains
adresa,nume,firma=string
telefon=symbol
client=cl(nume,adresa,telefon,firma)
predicates
introdu_client(client)
ruleaza
7) Într-un program Prolog, nu pot fi definite predicate de aritate 0.

8) Urmatoarea constructie este corecta:


domains
nume,den,tip=symbol
predicates
firma(den,tip)
asociat1(nume,den)
asociat2(nume,den)
patronat(nume,nume,den)

9) Orice modul Prolog este format numai din fapte.

NUMERIC RESPONSE

1) Care este lungimea maxima (numar de caractere) acceptata pentru numele predicatului în
limbajul Prolog?

2) Câte sectiuni poate cuprinde un program Prolog?

3) Câte ferestre contine pagina de primire a mediului Turbo Prolog ?

COMPLETION

1) Prin reguli de productie (în teoria limbajelor formale, denumirea initiala a fost de reguli de
scriere) se înteleg regulile de forma IF premize THEN concluzie, unde premizele si concluzia
reprezinta _________.

2) Faptele specifice problemei de rezolvat sunt fapte ____________ si sunt sterse dupa obtinerea
concluziei pentru problema.

3) Formatul predicatului este compus din nume_identificator si lista de ____________.

4) Sistemul de gestiune aferent bazelor de date deductive cuprinde instrumente de realizare


automata a rationamentelor ce sunt realizate prin _____________ logica.
5) În sablonul unui predicat este precizat numele predicatului si __________ fiecaruia dintre
argumente, al caror numar si ordine conteaza.

6) Sectiunea clauses (clauze) cuprinde ___________ si ___________ ce formeaza programul.

7) Ciclurile pot fi simulate prin folosirea predicatului fail sau prin _____________.

8) Prin negatie (Not), rezultatul obtinut la evaluarea unei clauze este ___________

9) Predicatul predefinit _______ este de aritate 0 si esueaza întotdeauna

10) Limbajul Prolog are implementat în mod natural o singura metoda de cautare, cunoscuta
drept cautarea în ___________.