Sunteți pe pagina 1din 2

EXAMENUL DE BACALAUREAT 2005

Prob scris la INFORMATIC, profil matematicinformatic


Varianta C i C++
Proba E
SIMULARE

Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu.


Timpul efectiv de lucru este de 3 ore.
n programele cerute la cerinele subiectului III, identificatorii utilizai trebuie s respecte
precizrile din enun (ngroate), iar n lipsa unor precizri explicite, notaiile trebuie s corespund
cu semnificaiile asociate acestora (eventual n form prescurtat).

I. Pentru fiecare din itemii de la 1 la 10, scriei pe foaia de examen litera corespunztoare
rspunsului corect. Fiecare rspuns corect se noteaz cu 4 puncte.

1. Ce reprezint rezultatul afiat de urmtorul citete a,b (numere naturale nenule)


algoritm? pentru i=a*b,1,-1 execut
dac a | i i b | i atunci ci
S-a folosit notaia matematic x | y pentru relaia sfarit pentru
x divide pe y sau y este divizibil cu x scrie c
a. cel mai mare divizor comun al numerelor a i b
b. cel mai mic multiplu comun al numerelor a i b
c. cel mai mare numr mai mic dect produsul numerelor a i b, care divide pe a i pe b
d. cel mai mic numr mai mare dect produsul numerelor a i b, care este divizibil cu a i cu b
2. Dac x este o variabil real, stabilii care dintre urmtoarele variante este o instruciune corect de
citire a valorii variabilei x?
a. scanf("%f",&x); / cin>>x; b. printf("%f",x); / cout<<x;
c. scanf("%f",x); / cin<<x; d. printf("%f",&x);/ cout>>x;

3. Numrul maxim de muchii dintr-un graf neorientat cu 8 noduri care nu conine nici un ciclu este:
a. 4 b. 8 c. 27 d. 7
4. Variabila s este utilizat ntr-un program pentru a memora suma a dou numere, primul dintre
numere fiind ntreg i al doilea fiind un numr real. Care dintre declarrile urmtoare este corect?
a. float s;
b. int s;
c. struct suma {float x; int y;} s;
d. struct suma {int x; float y;} s;
5. Se cere s se determine toate modalitile distincte de a programa n spectacole n z zile (de
exemplu dou spectacole Micul prin i Pcal se pot programa n trei zile, mari, miercuri i joi
astfel: Micul prin-mari i Pcal-miercuri sau; Micul prin-miercuri i Pcal-mari; Micul
prin-miercuri i Pcal-joi; Micul prin-mari i Pcal-joi; Micul prin-joi i Pcal-miercuri
etc.). Rezolvarea se bazeaz pe algoritmul de generare a:
a. combinrilor de n obiecte luate cte z
b. combinrilor de z obiecte luate cte n
c. aranjamentelor de n obiecte luate cte z
d. aranjamentelor de z obiecte luate cte n
S...
6. Algoritmul alturat determin n variabila S suma primelor 10 pentru i=1,10 execut
componente ale vectorului V. Cu ce trebuie nlocuite punctele
SVi + ...
de suspensie?

a. V1 i S b. 1 i Vi-1 c. 0 i S d. 0 i Vi-1

7. ntr-o list dublu nlnuit cu cel puin 4 elemente, fiecare element reine n cmpurile adp i adu
adresa elementului precedent i respectiv adresa elementului urmtor din list. Dac p este adresa
primului element din list, atunci p->adu->adu->adp este:
a. adresa primului element b. adresa celui de-al doilea element
c. adresa celui de-al treilea element d. adresa celui de-al patrulea element

1
8. Pentru graful neorientat alturat, determinai gradele nodurilor sale i
stabilii care dintre urmtoarele afirmaii este adevrat:
a. toate nodurile au grad par
b. gradele nodurilor sunt diferite dou cte dou
c. gradele nodurilor sunt egale dou cte dou
d. exist un unic nod de grad maxim
9. Subprogramul scif returneaz suma cifrelor unui numr natural transmis ca parametru. Stabilii
valoarea expresiei scif(scif(518)+scif(518))?
a. 14 b. 10 c. 28 d. 1
10. Un tablou x cu 6 componente conine valori reale astfel nct x1<x2, x3<x4, x5<x6, x1>x3,
x3>x5. Care dintre urmtoarele expresii reprezint cea mai mic valoare din vector?
a. x[1] b. x[2] c. x[3] d. x[5]

Se consider programul pseudocod alturat: citete n (nr. natural, n>1)


II.
S0 ; i1
Ce se va afia pentru n=17? (5p.) ct timp S+i<=n execut
1.
SS+i
2. Scriei algoritmul pseudocod echivalent cu algoritmul dat, ii+1
dar care s utilizeze un alt tip de structur repetitiv. (5p.)
3. Scriei programul C sau C++ corespunztor algoritmului scrie S
dat. (8p.)
4. Determinai cte valori de dou cifre exist, valori ce pot fi introduse pentru variabila n astfel nct
valoarea afiat s coincid cu valoarea introdus. (2p.)

III.
1.
Se citesc n (n numr natural, n>1) i apoi n numere reale x1, x2, ..., xn. S se determine cte dintre
cele n numere citite se afl n afara intervalului nchis determinat de numerele x1 i xn.
De exemplu, pentru n=6 i numerele 2, 0.5, 4, -1, -8, -3, se afieaz valoarea 2 (deoarece dou
dintre numerele date, cele subliniate, se afl n afara intervalului determinat de numerele 2 i 3). (10p.)
2.
Subprogramul apcar primete prin intermediul parametrului s un ir cu cel mult 255 de caractere i
prin parametrul c un caracter. El returneaz prin intermediul parametrului p un numr natural
reprezentnd numrul de apariii ale caracterului c n irul s.
a) Scriei definiia subprogramului apcar alegnd o implementare recursiv. (6p.)
b) Scriei programul care citete de la tastatur un ir de caractere (litere mari i cifre). Se cere s se
determine numrul total de vocale din irul dat, folosind apeluri ale subprogramului apcar. (4p.)
La punctul a), pentru varianta iterativ realizat n locul celei recursive, se acord 4 puncte din 6.
3.
Scriei programul Pascal care citete de la tastatur un numr natural nenul n i creeaz fiierul text
BAC.TXT ce conine pe prima linie n numere de 1, pe linia a doua n-1 numere egale cu 2, pe linia a
treia n-2 numere egale cu 3 etc., pe ultima linie coninnd o singur dat, numrul n. (10p.)
De exemplu, dac se citete n=4, atunci BAC.TXT va conine:
1 1 1 1
2 2 2
3 3
4