Înapoi la fișa subiectului

Textul subiectului și baremului

Subiect BAC Informatică Științe ale Naturii C/C++ 2026 – sesiunea specială, 20 mai 2026, varianta 4

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 și Cercetării
Centrul Național pentru Curriculum și Evaluare
Probă scrisă la INFORMATICĂ Varianta 4
Limbajul C/C++
Filieră teoretică, profil real, specializare științe ale naturii
Pagina 1 din 2
Examenul național de bacalaureat 2026
Proba E. d)
INFORMATICĂ
Limbajul C/C++
Varianta 4
Filieră teoretică, profil real, specializare științe ale naturii
• Toate subiectele sunt obligatorii. Se acordă zece puncte din oficiu.
• Timpul de lucru efectiv este de trei ore.
• Identificatorii utilizați în rezolvări 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ă). Datele de intrare se consideră corecte, validarea lor nefiind necesară.
SUBIECTUL I (20 de puncte)
Pentru fiecare dintre itemii de la 1 la 5, scrieți pe foaia de examen litera corespunzătoare răspunsului
corect. Fiecare răspuns corect se notează cu 4 puncte.
1. Indicați expresia C/C++ a cărei valoare este egală cu 26.
a. (2026-26)/100 b. 2026/100 c. (2026-26)%100 d. 2026%100
2. Tabloul unidimensional A=(3,9,11,12,17) se interclasează cu tabloul unidimensional B, în ordine
crescătoare, elementele fiind parcurse de la stânga la dreapta. Știind că elementul cu valoarea 9 din tabloul
A se compară cu 4 elemente ale tabloului B pe parcursul aplicării metodei, indicați o succesiune de valori
care pot fi elementele tabloului B, în ordinea în care apar în acesta.
a. (4,5,6,7,8) b. (4,5,6,10,13) c. (4,7,10,12,13) d. (4,8,10,12,13)
3. Indicați valoarea expresiei C/C++ alăturate. ceil(20.26)
a. 21 b. 20 c. 0.26 d. 0.20
4. În secvența C/C++ alăturată toate variabilele sunt întregi. Indicați atribuirile
care pot înlocui punctele de suspensie astfel încât, în urma executării
secvenței obținute, variabila r să memoreze valoarea 226.
r=1; n=2; e=26;
while(e>0)
{ if(e%2==1) r=r*n;
......
}
a. n=n/2; e=e-1; b. n=n/2; e=e/2; c. n=n*n; e=e-1; d. n=n*n; e=e/2;
5. O agenție de turism pune la dispoziție pachete de vacanță cu câte două destinații, în ordinea următoare: una
la munte și una pe litoral. Destinațiile sunt din mulțimile {Bușteni - notat cu 1, Păltiniș - notat cu 2,
Predeal - notat cu 3}, pentru munte și {Venus - notat cu 1, Neptun - notat cu 2, Olimp - notat cu 3} pentru
litoral. Două pachete diferă prin cel puțin o destinație de un anumit tip. În secvența C/C++ de mai jos toate
variabilele sunt de tip întreg, iar în urma executării ei se obțin toate pachetele de tipul precizat, afișându-se pe
ecran notațiile corespunzătoare destinațiilor alese. Primele cinci pachete obținute sunt, în această ordine,
(Bușteni, Venus), (Bușteni, Neptun), (Bușteni, Olimp), (Păltiniș, Venus), (Păltiniș, Neptun).
Indicați pachetul corespunzător
soluției obținute imediat înainte de
(Predeal, Venus).
for(i=1;i<=3;i++)
for(j=1;j<=3;j++)
cout<<i<<" "<<j<<endl; | printf("%d %d\n",i,j);
a. (Predeal, Olimp) b. (Predeal, Neptun) c. (Păltiniș, Olimp) d. (Păltiniș, Neptun)
SUBIECTUL al II-lea (40 de puncte)
1. Algoritmul alăturat este reprezentat în pseudocod.
S-a notat cu a%b restul împărţirii numărului natural a la numărul natural
nenul b şi cu [c] partea întreagă a numărului real c.
citeşte n
(număr natural nenul)
nr0; d2
┌cât timp d*d≤n execută
│ p0
│┌cât timp n%d=0 execută
││ p1; n[n/d]
│└■
│ nrnr+p; dd+1
└■
┌dacă n≠1 atunci
│ nrnr+1
└■
scrie nr
a. Scrieţi valoarea afișată în urma executării algoritmului dacă se citeşte
numărul 2600. (6p.)
b. Scrieţi două numere din intervalul [10,99] care pot fi citite, astfel încât,
pentru fiecare dintre acestea, în urma executării algoritmului să se
afişeze 1. (6p.)
c. Scrieţi programul C/C++ corespunzător algoritmului dat. (10p.)
d. Scrieţi în pseudocod un algoritm, echivalent cu cel dat, înlocuind a doua
structură cât timp...execută cu o structură repetitivă cu test final. (6p.)

Subiectul · pagina 2

Ministerul Educației și Cercetării
Centrul Național pentru Curriculum și Evaluare
Probă scrisă la INFORMATICĂ Varianta 4
Limbajul C/C++
Filieră teoretică, profil real, specializare științe ale naturii
Pagina 2 din 2
2. Pentru a verifica dacă în tabloul unidimensional (10,16,21,26,32,38,50) există elementul cu valoarea x,
se aplică metoda căutării binare. Scrieți două valori naturale posibile ale lui x, astfel încât succesiunea de
elemente ale tabloului a căror valoare se compară cu valoarea lui x pe parcursul aplicării metodei indicate să
fie 26, 16, 21. (6p.)
3. La un observator astronomic, pentru o stea se înregistrează următoarele date: magnitudinea aparentă
(număr real) și distanța față de Pământ, măsurată în ani-lumină (număr natural). Variabilele magnitudine
și distanta memorează datele înregistrate pentru o stea. Declarați variabila magnitudine și scrieți o
secvență de instrucțiuni C/C++ în urma executării căreia se afișează pe ecran mesajul aproape, dacă
distanța stelei față de Pământ este strict mai mică de 100 de ani-lumină, mesajul departe, dacă această
distanță este mai mare sau egală cu 1000 de ani-lumină, sau mesajul medie, altfel. (6p.)
SUBIECTUL al III-lea (30 de puncte)
1. La o paradă de modă se prezintă modele de rochii și costume, iar ordinea acestora este dată ca o
succesiune de cifre, cele impare reprezentând rochii, iar cele pare costume; în prezentare este inclus cel
puțin un costum.
Se citește un număr natural, n (n≥0), ale cărui cifre, de la stânga la dreapta, corespund modelelor, în
ordinea prezentării lor, și se cere să se scrie numărul de ordine al primului costum prezentat.
Scrieţi, în pseudocod, algoritmul de rezolvare pentru problema enunțată.
Exemplu: dacă n=576798 sau n=5700, atunci se scrie numărul 3. (10p.)
2. Scrieți un program C/C++ care citește de la tastatură un număr natural, n (n∈[2,50]), și un șir de n numere
naturale din intervalul [0,102], elemente ale unui tablou unidimensional. Programul transformă tabloul în
memorie, interschimbând elementul său de valoare minimă cu primul element al tabloului, dacă acest minim
este par, sau cu ultimul element al tabloului, dacă acest minim este impar. Dacă în tablou sunt mai multe
elemente de valoare minimă, se alege doar unul dintre acestea. Tabloul obținut este afișat pe ecran, cu
elementele separate prin câte un spațiu.
Exemplu: dacă n=6, pentru tabloul (8,6,2,2,7,4) se poate obține tabloul (2,6,8,2,7,4)
iar pentru tabloul (8,6,1,2,7,4) se obține tabloul (8,6,4,2,7,1) (10p.)
3. La o firmă de curierat, în prima lună nu s-a livrat niciun pachet, în cea de-a doua lună s-au livrat 3 pachete,
apoi numărul de pachete livrate în fiecare lună a fost cu un pachet în plus față de dublul numărului de pachete
livrate în luna precedentă, obținând astfel șirul numărului de pachete livrate: 0 3 7 15 31 63 127 255 ....
Se citește de la tastatură un număr natural din intervalul [0,109], reprezentând numărul de pachete livrate
de firma de curierat în ultima lună, și se cere să se scrie în fișierul bac.txt, în ordine descrescătoare,
separate prin câte un spațiu, numărul de pachete livrate în fiecare lună. Proiectați un algoritm eficient din
punctul de vedere al timpului de executare și al memoriei utilizate.
Exemplu: dacă se citește valoarea 127, fișierul conține numerele: 127 63 31 15 7 3 0
a. Descrieți în limbaj natural algoritmul proiectat, justificând eficiența acestuia. (2p.)
b. Scrieți programul C/C++ corespunzător algoritmului proiectat. (8p.)

Baremul

Deschide PDF-ul original

Baremul · pagina 1

Ministerul Educației și Cercetării
Centrul Național pentru Curriculum și Evaluare
Probă scrisă la informatică Varianta 4
Filieră teoretică, profil real, specializare științe ale naturii
Barem de evaluare și de notare
Pagina 1 din 2
Examenul național de bacalaureat 2026
Proba E. d)
Informatică
BAREM DE EVALUARE ȘI DE NOTARE
(comun pentru limbajele C/C++ și Pascal)
Varianta 4
Filieră teoretică, profil real, specializare științe ale naturii
• Se punctează orice modalitate de rezolvare corectă a cerinţelor.
• Nu se acordă punctaje intermediare, altele decât cele precizate explicit în barem. Nu se acordă
fracţiuni de punct.
• Se acordă zece puncte din oficiu. Nota finală se calculează prin împărțirea la zece a punctajului
total acordat pentru lucrare.
• Utilizarea unui tip de date care depăşeşte domeniul de valori precizat în enunţ (de exemplu
tipuri întregi cu semn pentru memorarea numerelor naturale, dimensiune a tablourilor) este
acceptată din punctul de vedere al corectitudinii programului, dacă acest lucru nu afectează
funcționarea sa.
SUBIECTUL I (20 de puncte)
1d 2b 3a 4d 5c 5x4p.
SUBIECTUL al II - lea (40 de puncte)
1. a. Răspuns corect: 3 6p.
b. Pentru răspuns corect 6p. Se acordă câte 3p. pentru fiecare dintre cele două
numere conform cerinței (oricare două numere din
intervalul indicat, de forma xk, unde x este număr prim
și k>0).
c. Pentru program corect
-declarare a variabilelor
-citire a datelor
-afișare a datelor
-instrucțiune de decizie
-instrucțiuni repetitive (*)
-atribuiri
-corectitudine globală a programului1)
10p.
1p.
1p.
1p.
2p.
3p.
1p.
1p.
(*) Se acordă numai 2p. dacă doar una dintre
instrucțiunile repetitive este conform cerinței.
d. Pentru algoritm pseudocod corect
-utilizare a unei structuri repetitive de tipul
cerut, înlocuind-o pe cea indicată (*)
-aspecte specifice ale secvenței obținute
prin înlocuire, conform cerinței (**)
-algoritm complet, corectitudine globală a
algoritmului1)
6p.
2p.
3p.
1p.
(*) Se acordă punctajul chiar dacă algoritmul obținut nu
este echivalent cu cel dat.
Se punctează orice formă de structură repetitivă
explicită, conform cerinței.
(**) Se acordă numai 2p. dacă doar un aspect specific
(tratare a cazului inițial n%d=0, condiție finală de
repetare/oprire) este conform cerinței.
2. Pentru răspuns corect 6p. Se acordă câte 3p. pentru fiecare dintre cele două
valori conform cerinței (orice număr natural din
intervalul [17,25]).
3. Răspuns corect
-declarare a variabilei, conform cerinței
-afișare a datelor, conform cerinței (*)
-corectitudine globală a secvenței1)
6p.
1p.
4p.
1p.
(*) Se acordă câte 2p. pentru fiecare aspect (mesaje,
corelare cazuri-mesaje) conform cerinței.
SUBIECTUL al III - lea (30 de puncte)
1. Pentru algoritm corect
-citire a datelor, conform cerinței
-determinare a valorii cerute (*)
-scriere a datelor, conform cerinței
-scriere principial corectă a structurilor de
control, corectitudine globală a
algoritmului1) (**)
10p.
1p.
6p.
1p.
2p.
(*) Se acordă câte 1p. pentru fiecare aspect (algoritm
de bază pentru parcurgerea tuturor cifrelor unui număr,
algoritm de bază pentru determinarea primei/ultimei
apariții a unei valori într-o serie, algoritm de bază pentru
numărarea unei serii de valori, identificare a unei cifre
corespunzătoare unei rochii/costum, cifre suport
verificate - inclusiv pentru cazul în care valorile pare
sunt valori nule de la finalul numărului, poziție față de
extremitatea din stânga) conform cerinței.
(**) Se punctează orice formă explicită de structură
repetitivă sau decizională.

Baremul · pagina 2

Ministerul Educației și Cercetării
Centrul Național pentru Curriculum și Evaluare
Probă scrisă la informatică Varianta 4
Filieră teoretică, profil real, specializare științe ale naturii
Barem de evaluare și de notare
Pagina 2 din 2
2. Pentru program corect
-declarare a unei variabile care să
memoreze un tablou unidimensional,
conform cerinței
-citire a datelor, conform cerinței
-determinare a tabloului cerut (*)
-afișare a datelor, conform cerinței
-declarare a variabilelor simple,
corectitudine globală a programului1)
10p.
1p.
1p.
6p.
1p.
1p.
(*) Se acordă câte 1p. pentru fiecare aspect specific
(algoritm de bază pentru determinarea unui minim
într-o serie de valori, determinare a poziției minimului,
identificare a primului/ultimului element al unui tablou,
interschimbare a două elemente, elemente suport
interschimbate/păstrate, obținere a tabloului în
memorie) conform cerinței.
3. a. Pentru răspuns corect
-descriere coerentă a algoritmului (*)
-justificare a elementelor de eficiență,
conform cerinței
2p.
1p.
1p.
(*) Se acordă punctajul chiar dacă algoritmul ales nu
este eficient.
(**) Se acordă numai 3p. dacă algoritmul parcurge
pașii necesari rezolvării, dar cu detalii care conduc la o
rezolvare parţială.
(***) Se acordă punctajul numai pentru un algoritm
liniar, care utilizează eficient memoria.
O soluţie posibilă utilizează două valori
corespunzătoare ultimelor două numere din șir (x, y în
această ordine), care se actualizează la fiecare pas;
inițial se afișează valoarea dată, apoi la fiecare pas se
determină valoarea curentă (x) pe baza ultimului număr
afișat (x=[(y-1)/2]), procedeu care se încheie după ce
s-a afișat valoarea 3, apoi, după caz, se afișează 0.
b. Pentru program corect
-operații cu fișiere: declarare, pregătire în
vederea scrierii, scriere în fișier, conform
cerinței
-determinare a valorilor cerute (*),(**)
-utilizare a unui algoritm eficient (***)
-declarare a variabilelor, citire a datelor,
corectitudine globală a programului1)
8p.
1p.
5p.
1p.
1p.
1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.