Bacalaureat 2024
Sesiunea iunie–iulie
Sn 3h
Informatică 2024
Informatică – Sn – Bacalaureat 2024, sesiunea iunie–iulie (varianta 03)
Textul subiectului
Ministerul Educației
Centrul Național de Politici și Evaluare în Educație
Examenul național de bacalaureat 2024
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. Indicați expresia C/C++ care are valoarea 1 dacă și numai dacă numerele memorate în variabilele întregi
x și y sunt pare.
a. x%2==0 && (y+1)%2!=0 b. (x-y)%2==0
c. (x+y)%2==0 d. x%2==y%2
2. Pentru a verifica dacă într-un tablou unidimensional există elementul cu valoarea x=16, se aplică metoda
căutării binare, iar succesiunea de elemente a căror valoare se compară cu x pe parcursul aplicării
metodei este 14, 24, 16. Indicați succesiunea de valori care pot fi, în această ordine, elementele
tabloului.
a. (2,14,7,24,12,16,48) b. (14,24,16,14,24,16)
c. (4,8,9,14,16,24,48) d. (14,14,24,24,16,16)
3. Indicați o expresie C/C++ care are valoarea 1 dacă și numai dacă numărul memorat în variabila întreagă
x aparține mulțimii {-3,-1,1,3}.
a. abs(x)>3 || x!=0 b. abs(x-3)<=3 || abs(x%2)==0
c. abs(x-3)>0 d. abs(x)<=3 && abs(x%2)==1
4. În secvența alăturată, toate variabilele sunt de tip întreg, iar x memorează u=1;
inițial un număr din intervalul [10,105]. Indicați o expresie care poate while(x!=0)
înlocui punctele de suspensie astfel încât, în urma executării secvenței { u=.........;
obținute, variabila u să memoreze ultima cifră a produsului cifrelor lui x. x=x/10;
}
a. u*(x%10) b. (u*x)%10
c. u%10*x d. (u%10)*(x%10)
5. În secvența de instrucțiuni de mai jos toate variabilele sunt de tip întreg.
for(i=0;i<9;i++)
4 4 4 4 2 2 2 2 2
{ for(j=0;j<9;j++)
4 4 4 2 2 2 2 2 2
if(...........)
4 4 2 2 2 2 2 2 2
cout<<″4 ″; | printf(″4 ");
4 2 2 2 2 2 2 2 2
else
2 2 2 2 2 2 2 2 2
cout<<″2 ″; | printf(″2 ″);
2 2 2 2 2 2 2 2 4
cout<<endl; | printf(″\n″);
2 2 2 2 2 2 2 4 4
}
2 2 2 2 2 2 4 4 4
2 2 2 2 2 4 4 4 4
Indicați o expresie care poate înlocui punctele de suspensie astfel încât, în urma executării secvenței
obținute, să se afișeze pe ecran valorile din figura de mai sus, în această ordine.
a. i-j>4 || i+j<12 b. i-j>4 && i+j<12
c. i+j<4 || i+j>12 d. i+j>4 && i+j<12
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
Centrul Național de Politici și Evaluare în Educație
SUBIECTUL al II-lea (40 de puncte)
1. Algoritmul alăturat este reprezentat în pseudocod. citește n
S-a notat cu [c] partea întreagă a numărului real c. (număr natural nenul)
a. Scrieți valoarea afișată dacă se citesc, în această ordine, numerele p1
┌pentru i1,n execută
5, 15, 27, 10, 1, 17. (6p.)
│ citește x
b. Dacă pentru n se citește valoarea 2, scrieți un set de numere distincte │ (număr natural)
din intervalul [0,103] care pot fi citite în continuare, astfel încât, în urma │┌repetă
executării algoritmului, să se afișeze valoarea 4. (6p.) ││ x[x/3]
│└până când x≤3
c. Scrieți programul C/C++ corespunzător algoritmului dat. (10p.) │┌dacă x≠0 atunci
d. Scrieți în pseudocod un algoritm echivalent cu cel dat, înlocuind adecvat ││ pp*x
structura pentru...execută cu o structură repetitivă de tip │└■
cât timp...execută. (6p.) └■
scrie p
2. Tablourile unidimensionale A și B au elementele: A=(8,4,2) și B=(3,8,10,17). Scrieți elementele
tabloului obținut prin interclasarea în ordine crescătoare a tablourilor A și B, în ordinea în care ele apar în
acesta. (6p.)
3. Variabila întreagă pret memorează prețul unui sortiment de ciocolată exprimat în lei (număr natural), iar
variabila tip memorează litera corespunzătoare tipului acesteia: litera N pentru ciocolata neagra
sau litera L pentru ciocolata cu lapte.
Declarați variabila tip și scrieți o secvență de instrucțiuni C/C++ în urma executării căreia se afișează pe
ecran tipul ciocolatei și, pe linia următoare, mesajul scumpa, dacă prețul acesteia este strict mai mare
decât 10 lei, sau mesajul ieftina în caz contrar.
Exemplu: dacă variabila pret memorează valoarea 16, iar variabila tip memorează litera N, se
afișează pe ecran
ciocolata neagra
scumpa (6p.)
SUBIECTUL al III-lea (30 de puncte)
1. Un număr natural se numește major impar dacă suma divizorilor săi proprii impari este strict mai mare decât
suma divizorilor săi proprii pari. Divizorii proprii ai unui număr sunt divizorii săi naturali diferiți de 1 și de el însuși.
Exemplu: 18 este număr major impar (divizorii săi proprii pari sunt 2, 6, cei impari 3, 9, iar 3+9>2+6).
Se citesc două numere naturale, a și b (2≤a≤b≤104) și se cere să se scrie cel mai mic număr major impar
din intervalul [a,b], sau valoarea 0, dacă în interval nu există un astfel de număr. Scrieți în pseudocod
algoritmul corespunzător.
Exemplu: dacă a=16, b=30, atunci se scrie 18. (10p.)
2. Scrieți un program C/C++ care citește de la tastatură un număr natural n (n∈[2,50]) și cele n elemente
ale unui tablou unidimensional, numere întregi din intervalul [10,104). Programul afișează pe ecran
mesajul DA și un număr natural k, separate printr-un spațiu, dacă toate valorile memorate în tablou au
câte k cifre, sau mesajul NU în cazul în care nu toate valorile au același număr de cifre.
Exemplu: pentru n=6 și tabloul (123, 241, 896, 908, 100, 536)
se afișează pe ecran DA 3
iar pentru n=6 și tabloul (123, 21, 896, 908, 100, 1536)
se afișează pe ecran NU (10p.)
3. De-a lungul unui traseu montan este utilizată o succesiune de marcaje turistice, care trebuie urmate în
acea ordine. Pentru fiecare marcaj se cunoaște cota (înălțimea, măsurată în metri) la care este plasat.
Numim scară într-un traseu o secvență de marcaje aflate pe poziții consecutive în cadrul traseului, care
au drept cote numere consecutive, ordonate strict crescător. O scară este formată din cel puțin două
marcaje, iar lungimea acesteia este egală cu numărul de marcaje care o compun.
Fișierul bac.txt conține un șir de cel mult 106 numere naturale din intervalul [10,104], separate prin
câte un spațiu, reprezentând cotele marcajelor turistice din cadrul unui traseu, în ordinea în care se
succed în acesta. Se cere să se afișeze pe ecran lungimea maximă a unei scări pe acest traseu. Dacă în
cadrul traseului nu există nicio scară, pe ecran se afișează mesajul nu exista. Proiectați un algoritm
eficient din punctul de vedere al timpului de executare și al spațiului de memorie utilizat.
Exemplu: dacă fișierul conține numerele 500 600 601 405 569 570 700 701 625 626 627 520
atunci pe ecran se afișează 3
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 iunie–iulie
Informatică
Sn
Subiect
· Barem · Var. 03
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 specială
Informatică
Sn
Subiect
· Barem · Var. 04
2024 · Simulare
Informatică
Sn
Subiect
· Barem
2024 · Model de subiect
Informatică
Sn
Subiect
· Barem