Înapoi la fișa subiectului

Textul subiectului și baremului

Subiect BAC Informatică Științe ale Naturii C/C++ 2013 – varianta 6

Acesta este textul selectabil extras automat din documentele PDF ale acestei variante. Pentru formule, tabele, pseudocod sau grafice, verifică pagina originală din PDF înainte de a rezolva exercițiile.

Subiectul

Deschide PDF-ul original

Subiectul · pagina 1

Ministerul Educaţiei Naționale
Centrul Naţional de Evaluare şi Examinare
Probă scrisă la informatică Varianta 6
Limbajul C/C++
Filiera teoretică, profilul real, specializarea ştiinţe ale naturii
1
Examenul de bacalaureat naţional 2013
Proba E. d)
Informatică
Limbajul C/C++
Varianta 6
Filiera teoretică, profilul real, specializarea științe ale naturii
• Toate subiectele sunt obligatorii. Se acordă 10 puncte din oficiu.
• Timpul de lucru efectiv 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ă).
• În programele cerute, datele de intrare se consideră corecte, validarea acestora
nefiind necesară.
SUBIECTUL I (30 de puncte)
Pentru itemul 1, scrieţi pe foaia de examen litera corespunzătoare răspunsului corect.
1. Valoarea expresiei C/C++ alăturate este: (4p.) 7+5/2
a. 6 b. 9 c. 9.5 d. 10
2. Se consideră algoritmul alăturat,
reprezentat în pseudocod.
S-a notat cu x%y restul împărţirii numărului
natural x la numărul natural nenul y şi cu [z]
partea întreagă a numărului real z.
citeşte a,b
(numere naturale nenule, a≤b)
nr0
┌pentru ia,b execută
│ xi
│ cx%10
│┌cât timp x≠0 şi x%10=c execută
││ x[x/10]
│└■
│┌dacă x=0 atunci
││ nrnr+1
│└■
└■
scrie nr
a) Scrieţi numărul afişat dacă pentru variabila
a se citeşte valoarea 65, iar pentru
variabila b se citeşte valoarea 80. (6p.)
b) Dacă pentru variabila a se citeşte valoarea
1234, scrieţi cel mai mare număr de patru
cifre care poate fi citit pentru variabila b
astfel încât, în urma executării algoritmului,
valoarea afişată să fie 5. (4p.)
c) Scrieţi în pseudocod un algoritm, echivalent cu cel dat, în care să se înlocuiască structura
pentru...execută cu o structură repetitivă cu test final. (6p.)
d) Scrieţi programul C/C++ corespunzător algoritmului dat. (10p.)

Subiectul · pagina 2

Ministerul Educaţiei Naționale
Centrul Naţional de Evaluare şi Examinare
Probă scrisă la informatică Varianta 6
Limbajul C/C++
Filiera teoretică, profilul real, specializarea ştiinţe ale naturii
2
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. O expresie C/C++ care are valoarea 1 oricare ar fi numărul strict pozitiv memorat în
variabila reală x este: (4p.)
a. x>=floor(x) && x<1+floor(x) b. x>floor(x) && x<1+floor(x)
c. x>=floor(x) && x-1==floor(x) d. x>floor(x) && x-1==floor(x)
2. Variabilele x şi y sunt de tip întreg. Instrucţiunea care poate înlocui
punctele de suspensie astfel încât executarea secvenţei obţinute să
aibă ca efect interschimbarea valorilor variabilelor x şi y este: (4p.)
......
y=x-y;
x=x-y;
a. x=y-x; b. x=x+y; c. y=y-x; d. y=x+y;
Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
3. Se consideră un dreptunghi cu laturile paralele cu axele sistemului de coordonate xOy.
Variabilele întregi xA şi yA memorează abscisa, respectiv ordonata vârfului din stânga –
sus al dreptunghiului, iar variabilele întregi xB şi yB memorează abscisa, respectiv
ordonata vârfului din dreapta – jos al dreptunghiului.
Scrieţi o expresie C/C++ care să aibă valoarea 1 dacă punctul de abscisă 1 și ordonată 2
se află în interiorul dreptunghiului menționat (dar nu pe laturile acestuia) sau valoarea 0 în
caz contrar. (6p.)
4. Se citeşte un număr natural n (1<n) şi se cere să se afișeze cel mai mic divizor prim al lui n.
Exemplu: pentru n=15 se afișează 3, iar pentru n=11 se afișează 11.
a) Scrieţi, în pseudocod, un algoritm de rezolvare pentru problema enunţată. (10p.)
b) Menţionaţi rolul tuturor variabilelor care au intervenit în algoritmul realizat la punctul a) şi
indicaţi datele de intrare, respectiv datele de ieşire ale problemei enunţate. (6p.)

Subiectul · pagina 3

Ministerul Educaţiei Naționale
Centrul Naţional de Evaluare şi Examinare
Probă scrisă la informatică Varianta 6
Limbajul C/C++
Filiera teoretică, profilul real, specializarea ştiinţe ale naturii
3
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ă un tablou unidimensional în care elementele sunt, în această ordine,
(4,7,10,12,15,21,49). Pentru a verifica dacă în tablou există elementul cu valoarea
x=16, se aplică metoda căutării binare.
Succesiunea corectă de elemente a căror valoare se compară cu valoarea lui x pe
parcursul aplicării metodei indicate este: (4p.)
a. 4, 7, 10, 12, 15 b. 12, 15, 21 c. 12, 21, 15 d. 49, 21, 15
Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
2. În secvenţa alăturată toate variabilele sunt de tip
întreg.
Scrieţi instrucțiunea sau instrucțiunile care pot
înlocui punctele de suspensie astfel încât, în
urma executării secvenţei obţinute, valoarea
variabilei nr să fie egală cu numărul valorilor
strict pozitive citite. (6p.)
nr=0;
for(i=1;i<=10;i++)
{ cin>>x; | scanf(”%d”,&x);
..........
}
3. Scrieţi un program C/C++ care citeşte de la tastatură un număr natural n (2<n<50), cele
n elemente ale unui tablou unidimensional, numere naturale cu cel mult 4 cifre, apoi un
număr natural k (1<k≤n). Programul determină şi afişează pe ecran suma primelor k
elemente ale tabloului care au valoare impară sau valoarea -1 dacă nu există k elemente
impare în tablou.
Exemplu: pentru n=8, tabloul (2, 7, 6, 8, 3, 7, 5, 1) şi k=3, se obţine valoarea 17
(7+3+7=17). (10p.)
4. Fişierul bac.txt conţine pe prima linie un număr natural cu cel mult nouă cifre, x, iar pe
a doua linie un şir de cel puţin două şi cel mult 1000000 de numere naturale cu cel mult
nouă cifre. Numerele din şir sunt separate prin câte un spaţiu.
Se cere să se afişeze pe ecran penultimul termen al şirului care are ultima cifră egală cu
prima cifră a numărului x. Dacă în şir nu există o astfel de valoare, pe ecran se afişează
mesajul Nu exista.
Pentru determinarea numărului cerut se utilizează un algoritm eficient din punctul de
vedere al memoriei şi al timpului de executare.
Exemplu: dacă fişierul bac.txt conţine numerele
12
345 8911 1245 51 67123 931 1234578
atunci pe ecran se afişează 51.
a) Descrieţi în limbaj natural algoritmul utilizat, justificând eficienţa acestuia. (4p.)
b) Scrieţi programul C/C++ corespunzător algoritmului descris. (6p.)

Baremul

Deschide PDF-ul original

Baremul · pagina 1

Ministerul Educaţiei Naționale
Centrul Naţional de Evaluare şi Examinare
Probă scrisă la informatică Varianta 6
Filiera teoretică, profilul real, specializarea ştiinţe ale naturii
Barem de evaluare şi de notare
1
Examenul de bacalaureat naţional 2013
Proba E. d)
Informatică
Barem de evaluare și de notare
(comun pentru limbajele C/C++ şi Pascal)
Varianta 6
Filiera teoretică, profilul real, specializarea ştiinţe ale naturii
• Se punctează oricare alte modalităţi de rezolvare corectă a cerinţelor.
• Nu se acordă punctaje intermediare, altele decât cele precizate explicit prin barem.
Nu se acordă fracţiuni de punct.
• Se acordă 10 puncte din oficiu. Nota finală se calculează prin împărţirea punctajului
total acordat pentru lucrare la 10.
• 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. b 4p.
2. a) Răspuns corect: 2 6p.
b) Răspuns corect: 7776 4p.
c) Pentru algoritm pseudocod corect
-echivalenţa prelucrării realizate,
conform cerinţei (*)
-corectitudinea globală a algoritmului1)
6p.
5p.
1p.
(*) Se acordă numai 2p. dacă algoritmul are
o structură repetitivă de tipul indicat,
principial corectă, dar nu este echivalent cu
cel dat.
Se va puncta orice formă corectă de
structură repetitivă conform cerinței.
d) Pentru program corect
-declarare variabile
-citire date
-afişare date
-instrucţiune de decizie corectă
-instrucţiuni repetitive corecte (*)
-atribuiri corecte
-corectitudine globală a programului1)
10p.
1p.
1p.
1p.
2p.
3p.
1p.
1p.
(*) Se acordă numai 2p. dacă doar una dintre
instrucţiuni este corectă.
SUBIECTUL al II - lea (30 de puncte)
1. a 4p.
2. b 4p.
3. Pentru rezolvare corectă
-condiții principial corecte pentru
coordonate
-operatori logici utilizați conform cerinței
6p.
2x2p.
2p.

Baremul · pagina 2

Ministerul Educaţiei Naționale
Centrul Naţional de Evaluare şi Examinare
Probă scrisă la informatică Varianta 6
Filiera teoretică, profilul real, specializarea ştiinţe ale naturii
Barem de evaluare şi de notare
2
4. a) Pentru rezolvare corectă
-citirea datelor
-determinarea unui număr conform
cerinţei (*)
-scrierea principial corectă a
structurilor de control (**)
-scrierea rezultatului
10p.
1p.
6p.
2p.
1p.
(*) Se acordă câte 2p. pentru fiecare dintre
cele trei proprietăţi ale numărului (divizor,
număr prim, mimin).
(**) Se va puncta orice formă corectă de
structură repetitivă sau decizională.
b) Pentru răspuns corect
-menţionarea rolului variabilelor
utilizate (*)
-date de intrare identificate corect
-date de ieșire identificate corect
6p.
2p.
2p.
2p.
(*) Se acordă numai 1p. dacă s-au
identificat doar o parte din variabilele
utilizate sau dacă nu pentru toate variabilele
este corect menționat rolul acestora.
SUBIECTUL al III - lea (30 de puncte)
1. c 4p.
2. Pentru răspuns corect 6p. Se acordă câte 3p. pentru fiecare dintre cele
două aspecte ale cerinței (identificarea
valorilor de numărat, actualizarea contorului)
rezolvate corect.
3. Pentru program corect
-declararea corectă a variabilei de tip
tablou
-citirea elementelor tabloului
-accesarea corectă a unui element al
tabloului
-determinarea numărului cerut (*)
-afișarea datelor și tratarea cazului -1
-declararea tuturor variabilelor
simple, citirea datelor simple,
corectitudinea globală a programului1)
10p.
1p.
2p.
1p.
4p.
1p.
1p.
(*) Se acordă câte 1p. pentru fiecare aspect
al cerinței (număr elemente suport, paritate
elemente suport, algoritm de numărare
principial corect, algoritm de însumare
principial corect).
4. a) Pentru răspuns corect
-coerenţa explicării metodei (*)
-explicarea unor elemente de
eficienţă
4p.
2p.
2x1p.
(*) Se acordă punctajul chiar dacă metoda
aleasă nu este eficientă.
b) Pentru program corect
-operaţii cu fişiere: declarare,
pregătire în vederea citirii, citire din
fişier
-determinarea valorii cerute (*, **)
-afişarea datelor şi tratarea cazului
Nu exista
-utilizarea unui algoritm eficient (***)
6p.
1p.
3p.
1p.
1p.
(*) Se acordă punctajul chiar dacă soluţia
propusă nu prezintă elemente de eficienţă.
(**) Se acordă câte 1p. pentru fiecare
condiţie impusă (prima cifră a lui x, ultima
cifră a unui număr din şir, penultima valoare
din şir cu proprietatea cerută) conform
cerinţei.
(***) Se acordă punctajul numai pentru un
algoritm liniar (de complexitate O(n)) şi care
utilizează eficient memoria.
O soluţie posibilă determină prima cifră p a
numărului x, apoi parcurge fişierul
memorând ultimele două valori pentru care
restul împărţirii acestora la 10 este p.
1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.