Bacalaureat 2018
Sesiunea iunie–iulie (rezervă)
Sn 3h
Informatică 2018
Informatică – Sn – Bacalaureat 2018, sesiunea iunie–iulie (rezervă) (varianta 08)
Textul subiectului
Ministerul Educaţiei Naționale
Centrul Naţional de Evaluare şi Examinare
Examenul de bacalaureat naţional 2018
Proba E. d)
Informatică
Limbajul C/C++
Varianta 8
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. Variabilele x, y și z sunt de tip întreg și memorează câte un număr natural. Indicați
expresia C/C++ care are valoarea 1 dacă și numai dacă oricare două dintre variabilele
precizate au valori distincte. (4p.)
a. (x-y)*(y-z)*(z-x) != 0
b. !(x==y && y==z)
c. x!=y || y!=z || z!=x
d. (x<y || y<z) && (x>y || y>z)
2. Algoritmul alăturat este reprezentatcitește a,b
în
pseudocod. (numere naturale, a<b)
a) Scrieţi ce se afişează dacă se citesc, în această u 0
ordine, numerele 2 și 6. (6p.) k a
┌cât timp k≤b execută
b) Dacă pentru variabila b se citeşte numărul 20, │ s 0
scrieţi patru numere care pot fi citite pentru │ t 1
variabila a, astfel încât, în urma executării │┌cât timp t*t≤k execută
algoritmului, pentru fiecare dintre acestea, să se ││ s s+t*t
afișeze doar valoarea 30. (4p.) ││ t t+1
│└■
c) Scrieţi în pseudocod un algoritm echivalent cu
│┌dacă s≠u atunci
cel dat, înlocuind adecvat una dintre structurile
││ scrie s, ’ ’
cât timp...execută cu o structură de tip
││ u s
pentru...execută. (6p.)
│└■
d) Scrieţi programul C/C++ corespunzător │ k k+1
algoritmului dat. (10p.) └■
Probă scrisă la informatică Varianta 8
Limbajul C/C++
Filiera teoretică, profilul real, specializarea științe ale naturii
1 din 3
Ministerul Educaţiei Naționale
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. Variabila x este de tip real și poate memora un număr real din floor(sqrt(x))
intervalul [45,55]. Numărul valorilor distincte pe care le poate
avea expresia C/C++ alăturată este: (4p.)
a. 1 b. 2 c. 3 d. 4
2. În secvența C/C++ alăturată toate variabilele sunt întregi, iar r=0;
m>n. Expresia care poate înlocui punctele de suspensie, x=n;
astfel încât, în urma executării secvenţei obţinute, variabila r y=m;
să memoreze diferenţa m-n este: do
(4p.) { x=x+1;
y=y-1;
r=r+2;
}while(x<y);
if(x!=y)r=...;
a. r-2 b. r-1 c. r+1 d. r+2
Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
3. Variabilele ora_decolare, minut_decolare și durata sunt întregi și memorează date
referitoare la un zbor al unui avion, derulat în totalitate în aceeași zi, pe teritoriul României:
ora și minutul decolării, respectiv durata zborului, exprimată în minute. Ora este un număr
din intervalul [0,23], iar minutul un număr din intervalul [0,59]. Scrieţi o secvenţă de
instrucţiuni în urma executării căreia să se memoreze în variabilele întregi
ora_aterizare și minut_aterizare ora, respectiv minutul aterizării avionului. (6p.)
4. Se citesc două numere naturale n, cu cifre distincte și nenule (10<n), și k (k∈ ∈[0,9]) și se
cere să se transforme numărul n, rotind circular spre stânga cifrele acestuia, astfel încât
cifra k să devină cifra unităților lui n, ca în exemplu. Dacă cifra k nu este printre cifrele lui n
sau dacă este cifra unităţilor acestuia, numărul rămâne nemodificat. Numărul obținut se
afișează apoi pe ecran.
Exemplu: dacă n=3125847 și k=2, se obține numărul n=5847312, iar dacă n=3125847 și
k=6, se obține numărul 3125847.
a) Scrieți, în pseudocod, algoritmul de rezolvare pentru problema enunțată. (10p.)
b) Precizaț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.)
Probă scrisă la informatică Varianta 8
Limbajul C/C++
Filiera teoretică, profilul real, specializarea științe ale naturii
2 din 3
Ministerul Educaţiei Naționale
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. Pentru a verifica dacă în tabloul unidimensional (7,9,11,14,16,18,20) există
elementul cu valoarea x, număr natural, se aplică metoda căutării binare. Pentru ca
succesiunea de elemente ale tabloului a căror valoare se compară cu valoarea lui x pe
parcursul aplicării metodei indicate să fie 14, 18, 16, mulțimea tuturor valorilor posibile ale
lui x este: (4p.)
a. {16} b. {14,16,18} c. {15,16,17} d. {20}
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 nr=.........;
întreg, iar numerele citite sunt naturale. for(i=1;i<=10;i++)
Scrieţi secvența înlocuind punctele de suspensie { cin>>x; | scanf(“%d”,&x);
astfel încât, în urma executării secvenţei .......
obţinute, valoarea variabilei nr să fie egală cu }
numărul valorilor citite care sunt strict mai mici
decât 2018. (6p.)
3. ∈[2,102]), și
Scrieţi un program C/C++ care citeşte de la tastatură un număr natural, n (n∈
4
alte numere naturale din intervalul [0,10 ]: cele n elemente ale unui tablou
unidimensional, apoi două numere distincte x și y. Programul modifică tabloul în memorie
înlocuind cu valoarea lui y fiecare număr x din tabloul citit și cu valoarea lui x fiecare
număr y din tabloul citit, celelalte elemente rămânând nemodificate. Programul afişează
apoi pe ecran elementele tabloului obținut, separate prin câte un spațiu, sau mesajul
nemodificat dacă nu s-a realizat nicio modificare.
Exemplu: pentru n=7, tabloul (0, 7, 0, 1, 0, 5, 1), x=0 și y=1
se obține tabloul (1, 7, 1, 0, 1, 5, 0). (10p.)
4. Se citeşte de la tastatură un număr natural, n (n∈ ∈[1,109]), şi se cere să se scrie în
fişierul text bac.txt, cel mai mare număr natural p cu proprietatea că numărul 4p este
divizor al numărului obținut prin evaluarea produsului 1·2·3·...·n.
Proiectați un algoritm eficient din punctul de vedere al timpului de executare și al memoriei
utilizate.
Exemplu: dacă n=10, fişierul conţine numărul 4.
a) Descrieţi în limbaj natural algoritmul proiectat, justificând eficienţa acestuia. (2p.)
b) Scrieţi programul C/C++ corespunzător algoritmului descris. (8p.)
Probă scrisă la informatică Varianta 8
Limbajul C/C++
Filiera teoretică, profilul real, specializarea științe ale naturii
3 din 3
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 iunie–iulie
Informatică
Sn
Subiect
· Barem · Var. 03
2024 · Sesiunea specială
Informatică
Sn
Subiect
· Barem · Var. 04
2024 · Simulare
Informatică
Sn
Subiect
· Barem