Sunteți pe pagina 1din 5

Ministerul EducaŃiei, Cercetării, Tineretului şi Sportului

Centrul NaŃional de Evaluare şi Examinare


Examenul de bacalaureat 2010
Proba E-d)
Proba scrisă la INFORMATICĂ
Limbajul C/C++
Specializarea matematică informatică, intensiv informatică

Varianta 10
• Toate subiectele (I, II şi III) sunt obligatorii. Se acordă 10 puncte din oficiu.
• Timpul efectiv de lucru este de 3 ore.
• În rezolvările cerute, identificatorii utilizaŃi trebuie să respecte precizările din enunŃ
(bold), iar în lipsa unor precizări explicite, notaŃiile trebuie să corespundă cu
semnificaŃiile asociate acestora (eventual în formă prescurtată).

SUBIECTUL I (30 de puncte)


Pentru itemul 1, scrieŃi pe foaia de examen litera corespunzătoare răspunsului corect.
1. IndicaŃi care dintre expresiile C/C++ de mai jos are valoarea 1 dacă şi numai dacă
numărul natural memorat în variabila întreagă n este divizibil cu 2 şi cu 7. (4p.)
a. !( (n%2==1) || (n%7!=0) ) b. (n%2==0) && (n%7!=0)
c. (n%2==0) || !(n%7==0) d. (n%7==2) && (n%2==7)

2. Se consideră algoritmul alăturat descris în citeşte n (număr natural nenul)


pseudocod: m
0
S-a notat cu x%y restul împărŃirii numărului natural x ┌repetă
la numărul natural nenul y şi cu [z] partea întreagă a │ c
n%10
numărului real z. │ n
[n/10]
│┌dacă c>5 atunci
a) ScrieŃi numărul afişat dacă pentru variabila n se
││ c
[c/2]
citeşte valoarea 64598. (6p.) │└■
b) ScrieŃi toate numerele de exact trei cifre care │ m
m*10+c
pot fi citite pentru variabila n astfel încât, pentru └până când n=0
fiecare dintre acestea, numărul afişat în urma scrie m
executării algoritmului să fie 24. (4p.)
c) ScrieŃi în pseudocod un algoritm, echivalent cu cel dat, în care să se înlocuiască structura
repetă...până când cu o structură repetitivă de alt tip. (6p.)
d) ScrieŃi programul C/C++ corespunzător algoritmului dat. (10p.)

Probă scrisă la INFORMATICĂ 1 Varianta 10


Specializarea matematică-informatică, intensiv informatică Limbajul C/C++
Ministerul EducaŃiei, Cercetării, Tineretului şi Sportului
Centrul NaŃional de Evaluare şi Examinare
SUBIECTUL al II-lea (30 de puncte)
Pentru fiecare dintre itemii 1 şi 2 scrieŃi pe foaia de examen litera corespunzătoare
răspunsului corect.
1. Se consideră declarările alăturate, în care variabila struct punct {
FIG memorează coordonatele, în planul xOy, ale float x, y;
centrului unui cerc, precum şi lungimea razei acestuia. };
O expresie C/C++ care are valoarea 1 dacă şi numai struct cerc {
dacă centrul cercului se află pe prima bisectoare a struct punct centru;
sistemului de coordonate al planului xOy este: (4p.) float raza;
} FIG;
a. FIG.centru(x)==FIG.centru(y) b. FIG.centru.x==FIG.centru.y
c. FIG.cerc.x==FIG.cerc.y d. FIG.punct.x==FIG.punct.y
2. Pentru ca graful orientat cu 5 vârfuri, reprezentat în figura
alăturată, să devină graf tare conex, numărul minim de arce care
trebuie adăugate acestuia este: (4p.)

a. 1 b. 2 c. 3 d. 4

ScrieŃi pe foaia de examen răspunsul pentru fiecare dintre cerinŃele următoare.


3. În secvenŃa de instrucŃiuni de mai jos, variabilele i şi j sunt de tip întreg şi se consideră că
variabila A memorează elementele, iniŃial nule, ale unui tablou bidimensional, cu 5 linii şi 5
coloane, numerotate de la 0 la 4.
Fără a utiliza şi alte variabile decât cele menŃionate mai sus, scrieŃi o instrucŃiune care
poate înlocui punctele de suspensie astfel încât, în urma executării secvenŃei, tabloul
memorat în variabila A să aibă elementele din figura de mai jos.
for(i=0;i<5;i++) 1 6 11 16 21
for(j=0;j<5;j++) 2 7 12 17 22
....... 3 8 13 18 23
4 9 14 19 24
5 10 15 20 25 (6p.)
4. Se consideră arborele cu rădăcină, având 10 noduri, numerotate de la 1 la 10, cu vectorul
de „taŃi” t=(3,3,8,0,8,9,9,4,4,9). EnumeraŃi toate nodurile arborelui care au exact
doi fii. (6p.)
5. Se consideră un text cu cel mult 100 de caractere, format din cuvinte şi numere, separate
prin unul sau mai multe spaŃii. Cuvintele sunt formate numai din litere ale alfabetului
englez. Toate numerele sunt reale, pozitive şi sunt formate numai din parte întreagă sau
din parte întreagă şi parte fracŃionară, separate prin punctul zecimal (.).
ScrieŃi un program C/C++ care citeşte de la tastatură textul, pe care îl transformă,
eliminând din componenŃa sa toate numerele care au parte fracŃionară. Programul afişează
apoi pe ecran textul obŃinut.
Exemplu: dacă textul citit este
Reprezentat cu 4 zecimale PI este 3.1415 si e este 2.7182
se va afişa pe ecran textul:
Reprezentat cu 4 zecimale PI este si e este (10p.)

Probă scrisă la INFORMATICĂ 2 Varianta 10


Specializarea matematică-informatică, intensiv informatică Limbajul C/C++
Ministerul EducaŃiei, Cercetării, Tineretului şi Sportului
Centrul NaŃional de Evaluare şi Examinare
SUBIECTUL al III-lea (30 de puncte)
Pentru itemul 1, scrieŃi pe foaia de examen litera corespunzătoare răspunsului corect.
1. Se consideră subprogramul p, definit int p(int m, int n)
alăturat. Valoarea lui p(210, 49) { if(n==0) return 1;
este: return 1+p(n, m%n);
}
(4p.)
a. 1 b. 2 c. 3 d. 4

ScrieŃi pe foaia de examen răspunsul pentru fiecare dintre cerinŃele următoare.


2. Având la dispoziŃie cinci flori diferite, lalea, narcisă, mac, frezie, garoafă, se
utilizează metoda backtracking pentru a obŃine toate posibilităŃile de a forma un
aranjament floral, ştiind că se folosesc toate cele cinci flori şi contează ordinea de aşezare
a acestora. Primele patru soluŃii obŃinute sunt, în această ordine: (lalea, narcisă, mac,
frezie, garoafă), (lalea, narcisă, mac, garoafă, frezie), (lalea, narcisă,
frezie, mac, garoafă), (lalea, narcisă, frezie, garoafă, mac). ScrieŃi ultimele
două soluŃii generate, în ordinea obŃinerii lor. (6p.)
3. Subprogramul tablou are trei parametri:
 n şi k, prin care primeşte câte un număr natural (3≤n≤20, 2≤k≤10);
 a, prin care furnizează un tablou unidimensional care memorează un şir crescător de
n⋅⋅k termeni, din mulŃimea primelor n numere naturale nenule, fiecare astfel de număr
fiind în şir de exact k ori.
ScrieŃi în limbajul C/C++ definiŃia completă a subprogramului.
Exemplu: dacă n=4, k=3 atunci, după apel, a=(1,1,1,2,2,2,3,3,3,4,4,4). (10p.)
4. Fişierul BAC.TXT conŃine, în ordine crescătoare, cel puŃin două şi cel mult 10000 de
numere naturale. Numerele sunt separate prin câte un spaŃiu şi au cel mult 9 cifre fiecare.
Cel puŃin un număr din fişier apare o singură dată.
a) ScrieŃi un program C/C++ care citeşte toate numerele din fişier şi, printr-un algoritm
eficient din punct de vedere al timpului de executare şi al memoriei utilizate, determină şi
afişează pe ecran, în ordine strict crescătoare, separate prin câte un spaŃiu, numai
numerele care apar o singură dată în fişier. (6p.)
Exemplu: dacă fişierul are conŃinutul de mai jos
1 1 2 2 2 7 10 10 10 10 21
pe ecran se afişează, în această ordine, numerele 7 21.
b) DescrieŃi în limbaj natural (3-4 rânduri) algoritmul utilizat la punctul a) şi justificaŃi
eficienŃa acestuia. (4p.)

Probă scrisă la INFORMATICĂ 3 Varianta 10


Specializarea matematică-informatică, intensiv informatică Limbajul C/C++
Ministerul EducaŃiei, Cercetării şi Inovării
Centrul NaŃional pentru Curriculum şi Evaluare în ÎnvăŃământul Preuniversitar
Examenul de bacalaureat 2010
Proba E-d)
Proba scrisă la INFORMATICĂ
Specializarea matematică-informatică, intensiv informatică
Subiecte 2009
BAREM DE CORECTARE ŞI DE NOTARE
(comun pentru limbajele Pascal şi C/C++)
Varianta 8
• Nu se acordă punctaje intermediare, altele decât cele precizate explicit prin barem. Nu se acordă
fracŃiuni de punct.
• Se punctează oricare alte formulări/ modalităŃi de rezolvare corectă a cerinŃelor.
• Se acordă 10 puncte din oficiu. Nota finală se calculează prin împărŃirea punctajului total acordat
pentru lucrare la 10.

• În programele cerute, datele de intrare se consideră corecte, validarea acestora nefiind necesară.
• Utilizarea unui tip de date care depăşeşte domeniul de valori precizat în enunŃ este acceptată
dacă acest lucru nu afectează corectitudinea în funcŃionarea programului.
• Se vor lua în considerare atât implementările concepute pentru compilatoare pe 16 biŃi, cât şi
cele pentru compilatoare pe 32 de biŃi.
SUBIECTUL I 30 de puncte
1. a 4p.
2. a) 21 6p.
b) 10 4p.
c) Pentru program pseudocod corect 6p. (*) O soluŃie posibilă se obŃine prin înlocuirea
- echivalenŃa prelucrării realizate (*) (**) 4p. secvenŃei
- echivalenŃa celor doi algoritmi 1p. ┌pentru i 1,n execută
1)
- corectitudine globală a algoritmului 1p. │ ...
└■
cu secvenŃa:
┌pentru i 1,n execută
│ s s+i
└■
sau cu secvenŃa:
b0
┌pentru i 1,n execută
│ b b+1
│ s s+b
└■
Pentru soluŃia s [n*(n+1)/2] care determină
rezultatul corect, dar nu conŃine o structură
repetitivă, conform cerinŃei, se acordă numai 2p.
(**) Se acordă punctajul pentru utilizarea corectă
a oricărui tip de structură repetitivă.
d) Pentru program corect 10p. (*) Se acordă numai 1p. dacă se declară corect
-declararea corectă a tuturor variabilelor numai o parte dintre variabilele utilizate.
(*) 2p.
-citire corectă 1p.
-scriere corectă 1p.
-structuri repetitive corecte 2x2p.
-atribuiri corecte 1p.
1)
-corectitudinea globală a programului 1p.

SUBIECTUL al II-lea 30 de puncte


1) b 4p.
2) d 4p.
3) Răspuns corect: 4, 5, 6 (*) 6p. (*) Pentru fiecare nod dintre cele trei, menŃionat
corect, se acordă câte 2p.

Probă scrisă la INFORMATICĂ Varianta 8


Specializarea matematică-informatică, intensiv informatică
1
Ministerul EducaŃiei, Cercetării şi Inovării
Centrul NaŃional pentru Curriculum şi Evaluare în ÎnvăŃământul Preuniversitar
4) Pentru rezolvare corectă 6p.
- accesul corect la câmpul nume al
variabilelor 2x1p.
- accesul corect la câmpul an al variabilelor 2x1p.
- determinarea şi afişarea datelor cerute 2p.
5) Pentru program corect 10p. (*) Se acordă punctajul şi dacă iniŃializarea cu 0 a
- declararea corectă a tuturor variabilelor acestor elemente nu s-a realizat prin atribuiri, ci,
(tablou şi variabile simple) 1+1p. de exemplu, implicit, prin declararea tabloului ca
- citire corectă a variabilelor simple 1p. variabilă globală.
- memorarea valorii 0 în elementele aflate pe
diagonala principală (*) 1p.
- memorarea valorilor cerute în elementele
aflate deasupra diagonalei principale 2p.
- memorarea valorilor cerute în elementele
aflate sub diagonala principală 2p.
- afişarea tabloului conform cerinŃei 1p.
1)
- corectitudinea globală a programului 1p.

SUBIECTUL al III-lea 30 de puncte


1) b 4p.
2) Pentru răspuns corect 6p. (*) Se acordă punctajul pentru orice număr din
x1: 26 3p. intervalul deschis (20, 30).
x2: de exemplu 21 (*) 3p.
3) Pentru subprogram corect 10p. (*) Pentru limbajul Pascal se are în vedere şi
- structură antet principial corectă 1p. definirea corectă a tipului de date necesar.
- declarare corectă a parametrului de (**) Se acordă punctajul şi dacă valorile generate
intrare 1p. nu au fost poziŃionate corect în tablou.
- declarare corectă a parametrului de (***) Pentru al treilea termen al şirului se acceptă o
ieşire (*) 1p. valoare calculată pe baza celor doi termeni
- accesul corect la un element al tabloului 1p. anteriori, ca în exemplu, sau orice altă valoare.
- generarea corectă a tuturor termenilor
ceruŃi (**) (***) 1p.
- poziŃionarea în tablou a elementelor pare
ale şirului, conform cerinŃei 2p.
- poziŃionarea în tablou a elementelor
impare ale şirului, conform cerinŃei 2p.
1)
- corectitudinea globală a subprogramului 1p.
4) a) Pentru program corect 6p. (*) Se acordă punctajul chiar dacă soluŃia
- operaŃii cu fişiere: declarare, pregătire în propusă nu prezintă elemente de eficienŃă.
vederea citirii, citire din fişier 1p. (**) Se acordă numai 1p. dacă s-a determinat
- determinarea corectă a unui număr care corect doar cel mai mare număr din fişier.
are ultima cifră egală cu 5 1p. (***) Punctajul se acordă numai pentru un
- determinarea şi afişarea celor mai mari algoritm liniar (de complexitate O(n)), care
trei numere din fişier cu proprietatea utilizează eficient memoria.
cerută (*),(**) 2p.
- utilizarea unui algoritm eficient (***) 1p.
- declarare de variabile, corectitudinea
globală a programului1) 1p.
b) Pentru răspuns corect 4p. (*) Se acordă punctajul chiar dacă metoda
- coerenŃa explicării metodei (*) 1p. aleasă nu este eficientă.
- explicarea unor elemente de eficienŃă
din punct de vedere al timpului de
executare 2p.
- explicarea unor elemente de eficienŃă
din punct de vedere al memoriei utilizate 1p.
1)
Corectitudinea globală vizează structura, sintaxa, alte greşeli neprecizate în barem

Probă scrisă la INFORMATICĂ Varianta 8


Specializarea matematică-informatică, intensiv informatică
2

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