Sunteți pe pagina 1din 1

Nume…………………………….. Clasa………….

Test
1.Care din următoarele anteturi de proceduri sunt corecte: (1p)
a)procedure test1(x, y:integer , z:boolean); b)procedure test2(x;char ; z;string):integer; c)procedure test3(a:integer ; k:integer);
d)procedure test4(a,b:integer ; a:real); e)procedure test5(c:string ; p:integer); f)function test6(a,b:word);

2. Care din următoarele anteturi de funcţii sunt corecte: (1p)


a)function test1:boolean; b)function test2(a:real); c)function test3(var x:integer):char;
d)function test4(a,b,c):real; e)function test5(a:char , b:byte):byte; f) procedure test6:integer;

3. Care din următoarele afirmaţii sunt adevărate şi care sunt false. Justificaţi răspunsul! (1.5p)
a. În cadrul unui subprogram o procedură poate fi executată o singură dată.
……………………………………………………………………………………………………………………….......................
b. Parametrii efectivi trebuie să coincidă ca număr şi tip cu parametrii formali.
………………………………………………………………………………………………………………………........................
c. Un subprogram nu poate apela un alt subprogram.
………………………………………………………………………………………………………………………........................

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


a. O variabilă……………………………….este vizibilă în tot programul.
b. Un parametru transmis la apelul unui subprogram se numeşte……………………………………………………………………
c. Subprogramul P1 poate apela subprogramul P2 doar dacă………………………………………………………………………..
d. ………………………returnează întotdeauna o valoare

5.Dacă avem un subprogram cu antetul: procedure te(a,x:integer; var b:real ); şi variabilele : c,d:integer; k:real, care din
următoarele apeluri sunt corecte: (1p)
a) te(c,k,d); b) te(c,c,k); c) te(c*d, trunc(k*3),k); d) te(2,6,k); e) te(c, int(k), k); f) te(1,2,3);

6. Ce afişează programul de mai jos: (1p)


var x:integer; Begin
procedure af( x:integer); x:=1;
begin while x<=5 do begin af(x);x:=x+1;end;
write(x:2);inc(x); End.
end;

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

7. Care este diferenţa între parametrii formali şi cei efectivi? (1p)

8. Să se scrie un program care testează dacă două numere sunt prietene, adică fiecare este egal cu suma divizorilor
celuilalt. Se va folosi un subprogram care returnează suma divizorilor unui număr transmis ca parametru. (1.5p)

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