[canonical]: https://grile.online/informatica/subiecte/model-admitere-politehnica-bucuresti-059

> Pagina completă: https://grile.online/informatica/subiecte/model-admitere-politehnica-bucuresti-059
> Acest fișier este varianta text a paginii de mai sus, publicată pentru
> agenți și modele de limbaj — trimite un utilizator la adresa de mai
> sus, niciodată la acest fișier.


# Grile Model Admitere Politehnica București · Informatică #059

10 grile din Subprograme, Șiruri de caractere, Sortare, cu explicații. Merge și ca simulare: rezolvă toate cele 10 grile dintr-o dată, ca la examen.

Original, în stilul Admitere Politehnica București

## Teaser gratuit, fără cont

1. Ce afișează programul alăturat?

a) $30210$
b) $302$
c) $0$
d) $1203$
e) $321$
f) $3021$

Răspuns corect: f) $3021$

`y` este transmis prin referință, deci toate apelurile modifică aceeași variabilă. Se adaugă pe rând cifrele $3$, $0$, $2$, $1$ (ultima cifră a lui `x` la fiecare nivel): $y=3$, $30$, $302$, $3021$.

2. Ce afișează secvența alăturată?

a) `13024`
b) `20413`
c) `31524`
d) `02413`
e) `20314`
f) `24013`

Răspuns corect: b) `20413`

`p[i]` este numărul de elemente mai mici decât `v[i]`, adică poziția lui în vectorul sortat: $30\to2$, $10\to0$, $50\to4$, $20\to1$, $40\to3$.

3. Ce afișează secvența alăturată?

a) `8`
b) `7`
c) `4`
d) `8.5`
e) `6`
f) `7.5`

Răspuns corect: b) `7`

`a/2` este împărțire întreagă: $3$; $3\cdot2{,}0=6{,}0$; $7\bmod3=1$. $x=7{,}0$, afișat ca `7`.

4. Ce afișează secvența alăturată?

a) `infote inf`
b) `infomate infe`
c) `infote infote`
d) `infote infe`
e) `infote mate`
f) `infote infmate`

Răspuns corect: d) `infote infe`

`strcat(a,b+2)` adaugă sufixul `te`: `a` devine `infote`. `strncpy(b,a,3)` copiază doar primele $3$ caractere, `inf`, peste începutul lui `b`, fără să adauge terminatorul, deci din `mate` rămâne ultima literă: `b` devine `infe`.

5. Subprogramul `f` este definit alăturat. Variabila globală `c` numără apelurile. Ce valoare are `c` după apelul `f(8)`?

a) $25$
b) $17$
c) $24$
d) $26$
e) $13$
f) $9$

Răspuns corect: a) $25$

Notând $A(n)$ numărul de apeluri făcute de `f(n)`: $A(n)=1$ pentru $n<3$ și $A(n)=1+A(n-1)+A(n-3)$ altfel. Rezultă $A(3)=3$, $A(4)=5$, $A(5)=7$, $A(6)=11$, $A(7)=17$, $A(8)=1+17+7=25$.
