Documente Academic
Documente Profesional
Documente Cultură
1. Variabila a este de tip real. Pentru a verifica dacă valoarea variabilei a aparține mulțimii
[-3,2] U{3, 5, 9} se va utiliza următoarea expresie:
Limbajul Pascal
a)not ((a<-3) or (a>2)) or (a=3) or (a=5) or (a=9)
b)(a>=-3) and (a<=2) and (a=3) or (a=5) or (a=9)
c)(a>-3) and (a<2) or (a=3) or (a=5) or (a=9)
d)(a<-3) or (a>2) and (a=3) and (a=5) and (a=9)
e)(a>=-3) or ((a<=2) and (a=3)) or (a=5) or (a=9)
f)(a>=-3) or not((a>2)) or (a=3)) or (a=5) or (a=9)
4. Precizați care dintre următoarele secvențe calculează suma elementelor de pe linia p, ale
unui tablou bidimensional x, cu m linii și n coloane (numerotate de la 1 la m, respectiv de
la 1 la n)
8
Limbajul C++/ Limbajul C Limbajul Pascal
a) s=0; a) s:=0;
for (i=m; i>=1; i--) for i:=m downto 1 do
s=s+x[p][i]; s:=s+x[p, i];
5. Fie graful orientat cu 5 noduri numerotate de la 1 la 5, și arcele (1,2), (2,3), (3,1), (3,4),
(4,5), (5,4). Precizați care este matricea drumurilor asociată acestui graf. Matricea
drumurilor este o matrice pătratică de dimensiune nxn, definită astfel:
Limbajul C++/ Limbajul C Limbajul Pascal
- a[i][j]=1 dacă există cel puțin - a[i,j]=1 dacă există cel puțin
un drum de la nodul i la nodul un drum de la nodul i la nodul
j j
- a[i][j]=0 dacă nu există niciun - a[i,j]=0 dacă nu există niciun
drum de la nodul i la nodul j drum de la nodul i la nodul j
a) 1 1 1 1 1 b) 0 1 1 1 1 c) 1 1 1 1 1
1 1 1 1 1 1 0 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 0 1 1 1 1 1 1 1
0 0 0 1 1 0 0 0 0 1 0 0 1 1 1
0 0 0 1 1 0 0 0 1 0 0 0 0 1 1
d) 0 1 0 0 0 e) 1 1 1 1 1 f) 1 1 0 0 0
0 0 1 0 0 1 1 1 1 1 0 0 1 0 0
1 0 0 1 0 1 1 1 1 1 1 0 0 1 1
0 0 0 0 1 1 0 0 1 1 0 1 0 0 1
0 0 0 1 0 0 1 0 1 1 1 0 0 1 0
9
mulțimi: A1={1, 2, 3}, A2={1, 2} și A3={1, 2, 3, 4} atunci, precizați care din următoarele
secvențe nu reprezintă o soluție a acestui algoritm, pentru produsul A3x A2x A1.
a) (4, 2, 3) b) (3, 3, 3) c) (3, 2, 1)
d) (1, 1, 1) e) (4, 1, 2) f) (3, 1, 3)
precizați care este apelul corect al funcției p pentru a verifica dacă un număr x este prim.
Limbajul Pascal
a) if p(x, x)=2 then write(’prim’);
b) if p(2, x)=2 then write(’prim’);
c) if p(x, 2)=0 then write(’prim’);
d) if p(x, x div 2)=2 then write(’prim’);
e) if p(x, 2)=x then write(’prim’);
f) if p(2, x)=1 then write(’prim’);
Limbajul C++
void t(int &x, int y)
{ x=x-1; y=x+1;
cout<<x<<y;
}
Limbajul C Limbajul Pascal
void t(int *x, int y) procedure t( var x: integer; y: integer);
{ *x=*x-1; y=*x+1; begin
printf( “%d%d”,*x,y); x:=x-1; y:=x+1;
} write(x, y);
end;
10
Dacă inițial x=3 și y=7, precizați ce se va afișa în urma executării secvenței de
instrucțiuni:
10 Funcția par cu parametrii de tip întreg a și b determină numărul de valori pare din intervalul
. [a, b], (a<b). Precizați care din următoarele expresii este adevărată, pentru orice numere a
și b care nu au aceeași paritate.
care returnează minimul dintre valorile variabilelor x și y. Precizați instrucțiunea prin care
se înlocuiesc punctele de suspensie, astfel încât la finalul executării secvenței de mai jos, să
se afișeze minimul dintre elementele tabloului unidimensional v, care are 30 de elemente
întregi aflate pe pozițiile 1, 2,....,30.
11
for (i=0; i<strlen(s); i++) .........................
if (s[i]>=’A’ && s[i]<=’Z’) s:=’AdmiTerE’;
s[i]=s[i]+32; for i:=1 to length(s) do
else if s[i] in [‘A’..’Z’] then
strcpy(s+i, s+i+1); s[i] := chr(ord(s[i])+32)
cout<<s; | printf(“%s”, s); else
delete(s,i,1);
write(s);
precizați care dintre următoarele instrucțiuni este corectă din punct de vedere sintactic.
15 Pentru funcția g definită mai jos, precizați valoarea care se returnează în urma apelului
. g(2,1).
a) 3 b) 4 c) 5 d) 6 e) 7 f) 10
12