Bacalaureat 2026
Sesiunea iunie–iulie
Sn 3h
Informatică 2026
Informatică – Sn – Bacalaureat 2026, sesiunea iunie–iulie (varianta 03)
Textul subiectului
Ministerul Educaţiei și Cercetării
Centrul Naţional pentru Curriculum şi Evaluare
Examenul național de bacalaureat 2026
Proba E. d)
Informatică
Limbajul C/C++
Varianta 3
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. Variabilele x și y sunt întregi. Indicați o expresie C/C++ care are valoarea 1 dacă și numai dacă
numerele naturale memorate în variabilele x și y au aceeași paritate.
a. (x*y)%2==0 b. x%2==0 && y%2==0
c. (x+y)%2==0 d. !(x%2==y%2)
2. Tablourile unidimensionale A și B au valorile A=(27,12,10,7,5,3,1) și B=(49,36,25,9,3,2) și
sunt interclasate în ordine descrescătoare, fiind parcurse de la stânga la dreapta. Indicați numărul total
de comparații între elementele tablourilor efectuate până la includerea valorii 12 în șirul obținut prin
interclasare.
a. 1 b. 3 c. 5 d. 7
3. Variabilele i și j sunt de tip întreg. Indicați expresia care poate înlocui punctele de suspensie astfel
încât, în urma executării secvenței obținute, să se afișeze numerele de mai jos.
for(i=0;i<5;i++) 0 9 10 19 20
{ for(j=0;j<5;j++) 1 8 11 18 21
if(j%2==0)cout<<5*j+i<<” ”; | printf(”%d ”,5*j+i); 2 7 12 17 22
else cout<<......<<” ”; | printf(”%d ”,.....); 3 6 13 16 23
cout<<endl; | printf(”\n”); 4 5 14 15 24
}
a. 5*j+4-i b. 5*j-i c. 4*j+4-i d. 4*j-i
4. Indicați o expresie C/C++ care are valoarea 1 dacă și numai dacă numărul memorat în variabila
întreagă x aparține reuniunii de intervale [-3,-1]∪[1,3].
a. abs(x)<=3 || x!=0 b. abs(x)>=1 && abs(x)<=3
c. abs(x-3)>=1 d. abs(x-1)>=3
5. În secvența alăturată toate variabilele sunt de tip întreg. Indicați if(n%2==0)
constanta cu care pot fi înlocuite punctele de suspensie astfel if(n==2)ok=1;
încât, în urma executării secvenței obținute, variabila ok să aibă else ok=0;
valoarea 1 dacă și numai dacă numărul natural memorat în else
variabila n este prim. { d=......; ok=1;
while (ok==1 && d*d<=n)
if(n%d==0) ok=0;
else d=d+2;
}
a. 0 b. 1 c. 2 d. 3
Probă scrisă la informatică Varianta 3
Limbajul C/C++
Filieră teoretică, profil real, specializare științe ale naturii
Pagina 1 din 2
Ministerul Educaţiei și Cercetării
Centrul Naţional pentru Curriculum şi Evaluare
SUBIECTUL al II-lea (40 de puncte)
citește n
1. Se consideră algoritmul alăturat, reprezentat în pseudocod.
(număr natural nenul)
a. Scrieți valorea afișată dacă se citesc, în această ordine, s0; x0; p1
numerele 8, 3, 1, 5, 2, 4, 5, 5, 7. (6p.) ┌repetă
│ citește y (număr natural nenul)
b. Dacă pentru n se citește numărul 3, scrieți un set de date │┌dacă y>x atunci
care pot fi citite în continuare, astfel încât, în urma executării ││ ss+y; xy
algoritmului, să se afișeze 0. (6p.) ││altfel
c. Scrieți programul C/C++ corespunzător algoritmului dat. (10p.) ││┌dacă x=y atunci ss-y
││└■
d. Scrieți în pseudocod un algoritm, echivalent cu cel dat, │└■
înlocuind structura repetitivă cu o structură de tip │ pp+1
pentru...execută. (6p.) └până când p>n
scrie s
2. Pentru a verifica dacă în tabloul unidimensional (5,7,15,19,21,23,25) există elementul cu valoarea x,
se aplică metoda căutării binare. Scrieți mulțimea tuturor valorilor întregi 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 19, 23, 21. (6p.)
3. Variabilele întregi p și r memorează primul termen, respectiv rația unei progresii aritmetice. Știind că
diferența dintre un termen al progresiei și termenul anterior este egală cu rația, scrieți o instrucțiune
C/C++ prin care i se atribuie variabilei întregi t valoarea celui de al 3-lea termen al progresiei. (6p.)
SUBIECTUL al III-lea (30 de puncte)
1. Numim număr uniform asociat unei valori naturale numărul obținut din aceasta prin eliminarea fie a
tuturor cifrelor sale pare, fie a tuturor cifrelor sale impare.
Exemplu: lui 19472 i se asociază numerele uniforme 197 și 42.
Se citește un număr natural cu toate cifrele nenule, n, având cel puțin o cifră pară și cel puțin o cifră
impară, și se cere să se scrie un număr obținut din cifrele numărului uniform impar asociat lui n, urmate
de cifrele numărului uniform par asociat lui n, ca în exemplu.
Scrieţi, în pseudocod, algoritmul de rezolvare a problemei enunțate.
Exemplu: dacă n=19472, se scrie numărul 19742. (10p.)
2. Scrieți un program C/C++ care citește de la tastatură un număr natural, n (n∈[2,20]), apoi cele n
elemente ale unui tablou unidimensional, numere întregi nenule din intervalul [-109,109]. Programul
afișează pe ecran mesajul alterneaza dacă în tablou nu există două numere pozitive sau două numere
negative pe poziții consecutive, sau mesajul nu alterneaza în caz contrar.
Exemplu: pentru n=5 și tabloul (-32,15,-7,16,-20) se afișează mesajul alterneaza
iar pentru n=5 și tabloul (-32,15,-7,16,20) se afișează mesajul nu alterneaza (10p.)
3. De-a lungul timpului, o persoană a participat la mai multe concursuri de șah și de go. Un rezultat motivant
corespunde unei poziții mai bune (cu un număr mai mic) în clasamentul unui concurs, comparativ cu
poziția obținută la concursul anterior de același tip.
Fișierul bac.txt conține un șir de cel mult 104 numere naturale, reprezentând rezultatele obținute 6 1
la concursurile la care a participat, în ordine cronologică: pentru fiecare dintre rezultate, câte o 8 2
7 1
pereche formată din poziția ocupată în clasamentul concursului corespunzător (un număr din
5 2
intervalul [1,300]), urmată de valoarea 1, dacă acesta a fost concurs de șah, sau de valoarea 2, 3 1
dacă acesta a fost concurs de go. Fiecare pereche se află pe câte o linie a fișierului, cu valorile 4 1
separate printr-un spațiu. 5 1
Se cere să se afișeze pe ecran numărul de rezultate motivante obținute la concursurile de șah. 1 2
Proiectați un algoritm eficient din punctul de vedere al timpului de executare și al spațiului de 4 2
memorie utilizat. 1 1
Exemplu: dacă fișierul conține numerele alăturate, pe ecran se afișează 3 2 1
pentru că la șah a obținut trei rezultate motivante (poziția 3 după poziția 7, poziția 1 după poziția 5 și 1 1
poziția 1 după poziția 2).
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.)
Probă scrisă la informatică Varianta 3
Limbajul C/C++
Filieră teoretică, profil real, specializare științe ale naturii
Pagina 2 din 2
Alte subiecte la Informatică – Sn
2026 · Sesiunea august
Informatică
Sn
Subiect
· Barem · Var. 01
2026 · Sesiunea specială
Informatică
Sn
Subiect
· Barem · Var. 04
2026 · Simulare
Informatică
Sn
Subiect
· Barem
2026 · Simulare (a doua)
Informatică
Sn
Subiect
· Barem · Var. 04
2026 · Model de subiect
Informatică
Sn
Subiect
· Barem
2025 · Sesiunea iunie–iulie
Informatică
Sn
Subiect
· Barem · Var. 01
2025 · Simulare
Informatică
Sn
Subiect
· Barem
2025 · Model de subiect
Informatică
Sn
Subiect
· Barem
2024 · Sesiunea iunie–iulie
Informatică
Sn
Subiect
· Barem · Var. 03
2024 · Sesiunea specială
Informatică
Sn
Subiect
· Barem · Var. 04
2024 · Simulare
Informatică
Sn
Subiect
· Barem
2024 · Model de subiect
Informatică
Sn
Subiect
· Barem