Sunteți pe pagina 1din 2

Nume……………………………….. Clasă……………. Data……………..

Test subprograme, recursivitate

1. Scrieţi un program care folosind o funcţie recursivă calculează: E=1+5+9+…+(4n-3). (2p)


2. Fie funcţia definită mai jos: (2p)

function f(x:integer):integer; Ce returnează apelul de funcţie


begin
if x=0 then f:=0 f(7)……………………………………
else if x mod 2 = 0 then f:=f(x-1)+x
else f:=f(x-1)-x; f(100)…………………………………
end;

3. Prezentaţi pe larg parametrii formali şi cei efectivi. Exemplificaţi. (2p)

4. Scrieţi un program care copiază din fişierul date.in în fişierul date.out toate numerele prime.

5. Precizaţi care din afirmaţiile de mai jos sunt adevărate şi care sunt false, justificând răspunsul: (1p)
a. Algoritmii recursivi sunt mai performanţi decât cei nerecursivi(ocupă mai puţină memorie, mai rapizi).

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

b. În Pascal un subprogram se poate apela pe el însuşi de un număr nelimitat de ori.

………………………………………………………………………………………………………………………………………………………………..
Nume……………………………….. Clasă……………. Data……………..

Test subprograme, recursivitate

1. Scrieţi un program care folosind o funcţie recursivă calculează: E=2*5*8*…*(3n-1) (2p)

2. Fie funcţia definită mai jos: (2p)

function f(n:integer):integer; Ce returnează apelul de funcţie


begin
if n=0 then f:=0 f(6)……………………………………
else if n mod 2 = 0 then f:=f(n-1)-n
else f:=f(n-1)+n; f(101)…………………………………
end;

3. Prezentaţi pe larg variabilele locale şi cele globale. Exemplificaţi. (2p)

4. Scrieţi un program care copiază sin fişierul nr.in în fişierul nr.out numerele ce au suma cifrelor pară.

5. Care din următoarele afirmaţii sunt false şi care sunt adevărate. Justificaţi răspunsul! (1p)
a. Subprogramele recursive implementează întotdeauna recursivitatea directă.

…………………………………………………………………………………………………………..

b. Orice funcţie trebuie să aibă cel puţin un parametru

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

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