Bacalaureat 2017
Model de subiect
Sn 3h
Informatică 2017
Informatică – Sn – Bacalaureat 2017, model de subiect
Textul subiectului
Ministerul Educaţiei Naționale și Cercetării Științifice
Centrul Naţional de Evaluare şi Examinare
Examenul de bacalaureat naţional 2017
Proba E. d)
Informatică
Limbajul C/C++
MODEL
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.) 5+7/2
a. 6 b. 8 c. 8.5 d. 9
2. Algoritmul alăturat este reprezentat în citeşte p,q
pseudocod. (numere naturale nenule, p≤q)
S-a notat cu a%b restul împărţirii numărului x
p
natural a la numărul natural nenul b şi cu [a] ┌cât timp x≤q execută
partea întreagă a numărului real a. │ y
x
│ c
y%10
a) Scrieţi valorile afişate dacă se citesc, în │┌cât timp y≠0 şi y%10=c execută
această ordine, numerele 65 și 80. (6p.)
││ y
[y/10]
b) Dacă pentru variabila p se citeşte numărul │└■
1234, scrieţi cel mai mare număr de patru │┌dacă y=0 atunci
cifre care poate fi citit pentru variabila q ││ scrie x, ' '
astfel încât, în urma executării algoritmului, │└■
să se afişeze 5 numere. (4p.) │ x
x+1
└■
c) Scrieţi în pseudocod un algoritm, echivalent cu cel dat, în care să se înlocuiască structura
cât timp...execută cu o structură de tip pentru...execută. (6p.)
d) Scrieţi programul C/C++ corespunzător algoritmului dat. (10p.)
Probă scrisă la informatică Model
Limbajul C/C++
Filiera teoretică, profilul real, specializarea ştiinţe ale naturii
1
Ministerul Educaţiei Naționale și Cercetării Științifice
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. O expresie C/C++ care are valoarea 1 este: (4p.)
a. 20.17>=floor(20.17) && 20.17<1+floor(20.17)
b. 20.17<floor(20.17) && 20.17>1+floor(20.17)
c. 20.17<=floor(20.17) && 20.17+1==floor(20.17)
d. 20.17>floor(20.17) && 20.17-1==floor(20.17)
2. În secvenţa de instrucţiuni alăturată, toate variabilele sunt întregi. do
Instrucţiunile care pot înlocui punctele de suspensie astfel încât, în { z=x%y;
urma executării secvenţei, variabila cm să aibă ca valoare cel mai ......
mare divizor comun al numerelor naturale nenule memorate inițial în }while(y!=0);
variabilele x şi y este: (4p.) cm=x;
a. x=z; y=x; b. y=z; x=y/x;
c. x=y; y=z; d. y=x/z; x=z;
Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
3. Variabilele întregi fx şi fy memorează numărătorul, respectiv numitorul unei fracţii. Scrieţi
o secvenţă de instrucţiuni C/C++ care să memoreze în variabilele întregi dx şi dy
numărătorul, respectiv numitorul fracţiei obţinute prin scăderea fracției 1/2017 din fracţia
menţionată mai sus. (6p.)
4. Se citesc două numere naturale a și b (1≤a≤b), și se cere să se scrie numărul valorilor din
intervalul [a,b] care pot fi scrise ca produs de două numere naturale consecutive.
Exemplu: dacă a=10 și b=40, se scrie 3 (valorile cu proprietatea cerută sunt 12, 20 și 30).
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ă Model
Limbajul C/C++
Filiera teoretică, profilul real, specializarea ştiinţe ale naturii
2
Ministerul Educaţiei Naționale și Cercetării Științifice
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. Se consideră un tablou unidimensional în care elementele sunt, în această ordine,
(5,7,9,12,17,23,59). 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. 5, 7, 9, 12, 17 b. 12, 17, 23 c. 12, 23, 17 d. 59, 23, 17
Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
2. În secvenţa alăturată variabilele i și ok sunt de ok=1;
tip întreg, iar variabila x este de tip char. for(i=1;i<=10;i++)
Scrieţi instrucțiunea sau instrucțiunile care pot { cin>>x; | scanf(”%c”,&x);
înlocui punctele de suspensie astfel încât, în .......
urma executării secvenţei obţinute, valoarea }
variabilei ok să fie 1 dacă toate caracterele citite
sunt litere mici ale alfabetului englez, sau
valoarea 0 altfel. (6p.)
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
transformă în memorie tabloul prin înlocuirea cu numărul 2017 a fiecărei secvențe
formate din exact doi termeni pari aflați pe poziții consecutive în tablou. Programul
afişează pe ecran tabloul obţinut sau mesajul nu exista dacă tabloul citit nu conține
astfel de secvențe.
Exemplu: pentru n=8 și tabloul (2, 8, 7, 8, 6, 4, 5, 4, 4, 1),
se obţine tabloul (2017, 7, 8, 6, 4, 5, 2017, 1). (10p.)
4. Se consideră şirul definit alăturat (unde n și x sunt x, dacă n = 1
numere naturale nenule, iar x este impar). De
exemplu, pentru x=21 șirul este: fn = 1 + fn-1, dacă n par
21, 22, 45, 46, 93, 94, 189, 190 ....
1 + 2 ⋅ fn-1, altfel
Se citesc de la tastatură două numere naturale din intervalul [1,109], x și y, cu cel mult
nouă cifre, unde x are semnificația precizată mai sus, iar y este un termen al şirului dat, şi
se cere să se scrie în fişierul text bac.txt, în ordine strict descrescătoare, separați prin
câte un spațiu, toţi termenii şirului care sunt mai mici sau egali cu y.
Pentru determinarea termenilor ceruţi se utilizează un algoritm eficient din punctul de
vedere al memoriei şi al timpului de executare.
Exemplu: dacă x=21, iar y=189, fişierul bac.txt conţine numerele
189 94 93 46 45 22 21
a) Descrieți în limbaj natural algoritmul utilizat, justificând eficienţa acestuia. (2p.)
b) Scrieţi programul C/C++ corespunzător algoritmului descris. (8p.)
Probă scrisă la informatică Model
Limbajul C/C++
Filiera teoretică, profilul real, specializarea ştiinţe ale naturii
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