Вы находитесь на странице: 1из 3

Ministerul Educaiei Naionale i Cercetrii tiinifice

Centrul Naional de Evaluare i Examinare

Examenul de bacalaureat naional 2016


Proba E. d)
Informatic
Limbajul C/C++
Varianta 9
Filiera teoretic, profilul real, specializarea tiine ale naturii
Toate subiectele sunt obligatorii. Se acord 10 puncte din oficiu.
Timpul de lucru efectiv este de 3 ore.
n rezolvrile cerute, identificatorii utilizai trebuie s respecte precizrile din
enun (bold), iar n lipsa unor precizri explicite, notaiile trebuie s corespund cu
semnificaiile asociate acestora (eventual n form prescurtat).
n programele cerute, datele de intrare se consider corecte, validarea acestora
nefiind necesar.
SUBIECTUL I
(30 de puncte)
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect.
1.

Variabilele x i y sunt de tip real. Expresia C/C++ alturat este !(x>0 && y>0)
echivalent cu expresia:
(4p.)

a.

x<=0 || y<=0

b.

x<=0 && y<=0

c.

x>0 || y>0

d.

!(x>0) && !(y>0)

citete n
(numr natural nenul)
p 0
pentru i 1,n execut
m i
ct timp m%2=0 execut
Scriei valoarea afiat n urma m [m/2]
executrii algoritmului dac se citete
numrul 12.
(6p.) dac m=1 atunci
Scriei cel mai mic i cel mai mare p i
numr care pot fi citite astfel nct,
pentru fiecare dintre acestea, valoarea
afiat s fie 16.
(4p.) scrie p

2. Se consider algoritmul alturat,


reprezentat n pseudocod.
S-a notat cu a%b restul mpririi numrului
natural a la numrul natural nenul b i cu
[c] partea ntreag a numrului real c.
a)

b)

c)

Scriei n pseudocod un algoritm echivalent cu cel


pentru...execut cu o structur repetitiv cu test final.

d)

Scriei programul C/C++ corespunztor algoritmului dat.

Prob scris la informatic


Limbajul C/C++

dat,

nlocuind

structura
(6p.)
(10p.)

Varianta 9

Filiera teoretic, profilul real, specializarea tiine ale naturii

Ministerul Educaiei Naionale i Cercetrii tiinifice


Centrul Naional de Evaluare i Examinare

SUBIECTUL al II-lea
(30 de puncte)
Pentru fiecare dintre itemii 1 i 2 scriei pe foaia de examen litera corespunztoare
rspunsului corect.
1.

Indicai o expresie C/C++ care are valoarea 1 dac i numai dac numrul ntreg memorat
n variabila ntreag x aparine mulimii {-2,-1,1,2}.
(4p.)

a.

abs(x)>2 || x==0

b.

abs(x)<=2 && x!=0

c.

abs(x-2)<1

d.

abs(x-1)>2

2.

Variabilele x, y i d sunt de tip ntreg i memoreaz cte un d=x;


numr natural strict pozitiv. Indicai o expresie care poate if(d>y) d=y;
nlocui punctele de suspensie astfel nct, n urma executrii while(........)
d=d-1;
secvenei obinute, variabila d s memoreze cel mai mare
divizor comun al valorilor memorate n variabilele x i y. (4p.)

a.

x%d+y%d!=0

b.

x%d!=y%d

c.

(x+y)%d!=0

d.

(x%d)*(y%d)!=0

Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare.


3.

Se consider dou puncte A i B din planul definit de sistemul de coordonate xOy.


Coordonatele punctului A sunt memorate n variabilele ntregi xa (abscisa) i ya
(ordonata), iar coordonatele punctului B sunt memorate n variabilele ntregi xb (abscisa) i
yb (ordonata). Niciunul dintre cele dou puncte nu se afl n originea sistemului.
Scriei o expresie C/C++ care s aib valoarea 1 dac i numai dac punctul A este situat
pe axa Oy, iar punctul B este situat pe axa Ox a sistemului de coordonate.
(6p.)

4.

Se citete un numr natural, n (n1), i se cere s se scrie numrul obinut prin duplicarea
fiecrei cifre pare a lui n sau -1 dac acesta nu are nicio cifr par.
Exemplu: dac n=2380 se scrie
2238800
a) Scriei, n pseudocod, algoritmul de rezolvare pentru problema enunat.
(10p.)
b) Precizai rolul tuturor variabilelor care au intervenit n algoritmul realizat la punctul a) i
indicai datele de intrare, respectiv datele de ieire ale problemei enunate.
(6p.)

Prob scris la informatic


Limbajul C/C++

Varianta 9

Filiera teoretic, profilul real, specializarea tiine ale naturii

Ministerul Educaiei Naionale i Cercetrii tiinifice


Centrul Naional de Evaluare i Examinare

SUBIECTUL al III-lea
(30 de puncte)
Pentru itemul 1, scriei pe foaia de examen litera corespunztoare rspunsului corect.
1.
Tablourile unidimensionale A i B au elementele: A=(20,17,12,10,3), iar
B=(45,16,12,7,2). n urma interclasrii lor n ordine descresctoare se obine tabloul cu
elementele:
(4p.)
a. (45,17,12,10,3)
b. (45,20,16,17,12,12,7,10,2,3)
c. (45,20,17,16,12,12,10,7,3,2)
d. (45,20,17,16,12,12,7,10,3,2)
Scriei pe foaia de examen rspunsul pentru fiecare dintre cerinele urmtoare.
s=.........;
for(i=1;i<=10;i++)
{ cin>>x; | scanf(%d,&x);
if(.............)
s=s+x;
}

2.

n secvena alturat toate variabilele sunt de tip


ntreg. Scriei secvena, nlocuind punctele de
suspensie astfel nct, n urma executrii
secvenei obinute, valoarea variabilei s s fie
egal cu suma numerelor ntregi citite care au
cel mult dou cifre.
(6p.)

3.

Scriei un program C/C++ care citete de la tastatur un numr natural, n (n


[2,102]), i
numere naturale din intervalul [0,1000], n aceast ordine: cele n elemente ale unui
tablou unidimensional i un numr x. Prima poziie a tabloului este 0.
Programul afieaz pe ecran mesajul DA, dac exist cel puin un element egal cu x aflat
pe poziiile impare ale tabloului sau mesajul NU n caz contrar.
Exemplu: pentru n=5, tabloul (1,3,4,2,6) i x=2,
se afieaz pe ecran mesajul
DA
iar pentru n=5, tabloul (1,12,2,4,6) sau tabloul (1,3,12,4,6) i x=2,
se afieaz pe ecran mesajul
NU
(10p.)

4.

Fiierul bac.txt conine un ir de cel mult 106 numere naturale distincte din intervalul
[0,109]. Numerele din ir sunt separate prin cte un spaiu.
Se cere s se determine ultimii doi termeni pari din irul aflat n fiier care sunt precedai
de doar un termen impar. Termenii determinai se afieaz pe ecran, n ordinea apariiei
lor n ir, separai printr-un spaiu, iar dac n ir nu exist doi astfel de termeni, pe ecran
se afieaz mesajul Nu exista.
Pentru determinarea termenilor cerui se utilizeaz un algoritm eficient din punctul de
vedere al spaiului de memorie i al timpului de executare.
Exemplu: dac fiierul conine numerele
4 16 5 12 14 30 212 16 11 400
se afieaz pe ecran
212 16
(4 i 16 sunt precedate de 0 numere impare, 12, 14, 30, 212 i 16 sunt precedate
de 1 numr impar, iar 400 este precedat de 2 numere impare; dintre numerele 12, 14,
30, 212 i 16 ultimele dou sunt 212 i 16).
a) Descriei n limbaj natural algoritmul utilizat, justificnd eficiena acestuia.
(4p.)
b) Scriei programul C/C++ corespunztor algoritmului descris.
(6p.)

Prob scris la informatic


Limbajul C/C++

Varianta 9

Filiera teoretic, profilul real, specializarea tiine ale naturii

Вам также может понравиться