Sunteți pe pagina 1din 1

Nume.................................... Data....................

Test

1. Care din următoarele afirmaţii sunt adevărate şi care sunt false? Justificaţi răspunsul! (2p)
a. Pentru a implementa un algoritm care foloseşte metoda backtracking este nevoie de cel puţin un
subprogram recursiv.

………………………………………………………………………………………………………………
b. Metoda backtracking este în general cea mai bună alegere în cazul în care se doreşte determinarea
tuturor soluţiilor unei anumite probleme(ex. toate drumurile de ieşire dintr-un labirint).

………………………………………………………………………………………………………………
c. Metoda backtracking este în general cea mai bună alegere în cazul în care se doreşte determinarea
celei mai bune soluţii a unei anumite probleme(ex. cel mai scurt drum de ieşire dintr-un labirint).

………………………………………………………………………………………………………………
d. Un algoritm ce implementează backtracking recursiv este mai performant decât unul care nu
foloseşte recursivitatea.

………………………………………………………………………………………………………………

2. Completaţi propoziţiile cu cuvântul sau cuvintele lipsă. (2p)

a. Backtracking-ul este ……………………………., pe când recursivitatea este………………………

b. O definiţie corectă ar fi: ….…........................bun(var x:integer):boolean.

c. Procedura P1 poate fi apelată de procedura P2 doar dacă este…………………………………………

d. Un subprogram care se apelează pe el însuşi este un subprogram……………………………………

3. Scrieţi un subprogram recursiv pentru calcularea sumei primelor n numere pare. Subprogramul va primi
drept parametru numărul n şi va returna suma corespunzătoare. (2p)

…………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………
…………………………………………………………………………………………………………………

4. Scrieţi subprogramul care afişează toate drumurile pe care se poate ieşi dintr-un labirint, ştiind că dintr-o
căsuţă se poate merge în oricare dintre cele 8 căsuţe vecine. Se presupune că labirintul este memorat într-o
matrice a de dimensiune n(linii)xm(coloane). Se va scrie partea de declaraţii de variabile şi subprogramul,
sau subprogramele necesare. (3p)

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