Înapoi la fișa subiectului

Textul subiectului și baremului

Simulare BAC Informatică Mate-Info C/C++ 2018 – 22 martie 2018

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 Naționale
Centrul Naţional de Evaluare şi Examinare
Probă scrisă la informatică Simulare
Limbajul C/C++
Filiera teoretică, profilul real, specializările: matematică-informatică, matematică-informatică intensiv informatică
Filiera vocaţională, profilul militar, specializarea matematică-informatică
1 din 3
Examenul de bacalaureat naţional 2018
Proba E. d)
Informatică
Limbajul C/C++
SIMULARE
Filiera teoretică, profilul real, specializările: matematică-informatică
matematică-informatică intensiv informatică
Filiera vocaţională, profilul militar, specializarea matematică-informatică
• 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.) 2018/3/22
a. 30 b. 30.5758 c. 14784 d. 14798.7
2. Algoritmul alăturat este reprezentat în
pseudocod.
S-a notat cu [a] partea întreagă a numărului real
a și cu a%b restul împărțirii numărului natural a la
numărul natural nenul b.
citeşte n
(număr natural)
x1
┌cât timp x≤[n/3] execută
│ yx+1
│┌cât timp y≤[n/3] execută
││ zn-x-y
││┌dacă z%2=x%2 atunci
│││ scrie x,y,z,’*’
││└■
││ yy+1
│└■
│ xx+1
└■
scrie ’#’
a) Scrieţi ce se afișează dacă se citește
numărul 9. (6p.)
b) Scrieți cel mai mic număr natural care poate
fi citit astfel încât, în urma executării
algoritmului, să se afișeze o singură dată
simbolul *. (4p.)
c) Scrieţi în pseudocod un algoritm echivalent
cu cel dat, înlocuind adecvat prima structură
cât timp...execută cu o structură
repetitivă de tip pentru...execută. (6p.)
d) Scrieţi programul C/C++ corespunzător
algoritmului dat. (10p.)

Subiectul · pagina 2

Ministerul Educaţiei Naționale
Centrul Naţional de Evaluare şi Examinare
Probă scrisă la informatică Simulare
Limbajul C/C++
Filiera teoretică, profilul real, specializările: matematică-informatică, matematică-informatică intensiv informatică
Filiera vocaţională, profilul militar, specializarea matematică-informatică
2 din 3
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. Indicați matricea de adiacență a unui graf orientat cu 4 vârfuri, numerotate de la 1 la 4,
căruia îi poate aparține drumul 1,3,4,3,2. (4p.)
a. 0 1 0 0
1 0 1 0
1 0 0 1
0 0 1 0
b. 0 0 1 0
1 0 0 0
0 0 0 1
0 0 0 0
c. 0 0 1 0
0 0 1 0
0 1 0 1
0 1 0 0
d. 0 1 1 0
0 0 0 0
0 1 0 1
0 1 1 0
2. Într-un arbore fiecare nod are cel mult 3 fii. Dacă 10 dintre nodurile sale au gradul egal
cu 1, atunci numărul maxim de noduri cu gradul egal cu 4 este: (4p.)
a. 3 b. 4 c. 5 d. 7
Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
3. Pentru o stație meteo se memorează, în variabila m, următoarele informații: luna și anul în
care au fost făcute măsurători, precum și temperaturile medii înregistrate în 15 dintre zilele
lunii respective.
Știind că expresiile C/C++ de mai jos au ca valori luna (un număr natural din intervalul
[1,12]) și anul în care au fost măsurate temperaturi (număr natural), respectiv prima
temperatură medie înregistrată (un număr real), scrieți definiția unei structuri cu eticheta
meteo, care permite memorarea informațiilor precizate, și declarați corespunzător
variabila m.
m.luna
m.an
m.temperatura[0] (6p.)
4. Variabilele i şi j sunt de tip întreg, iar variabila a memorează
un tablou bidimensional cu 9 linii şi 9 coloane, numerotate de la
0 la 8, având iniţial toate elementele nule.
Scrieţi secvenţa de instrucţiuni de mai jos, înlocuind punctele de
suspensie astfel încât, în urma executării secvenţei obţinute,
variabila a să memoreze tabloul alăturat.
for(i=0;i<9;i++)
for(j=0;j<9;j++)
.................. (6p.)
1 1 1 1 1 1 1 8 8
1 1 1 1 1 1 8 8 8
1 1 1 1 1 8 8 8 1
1 1 1 1 8 8 8 1 1
1 1 1 8 8 8 1 1 1
1 1 8 8 8 1 1 1 1
1 8 8 8 1 1 1 1 1
8 8 8 1 1 1 1 1 1
8 8 1 1 1 1 1 1 1
5. O pereche de cuvinte, unul cu număr par de litere, iar celălalt cu număr impar de litere, se
numește descentrată dacă se poate obține cuvântul cu număr par de litere din celălalt,
prin duplicarea caracterului din mijlocul acestuia.
Exemplu: perechile crezi și creezi, respectiv a și aa sunt descentrate.
Un text are cel mult 100 de caractere, iar cuvintele sale sunt formate din litere mici ale
alfabetului englez şi sunt separate prin câte un spațiu.
Scrieţi un program C/C++ care citeşte de la tastatură un text de tipul precizat mai sus şi
afișează pe ecran mesajul DA, dacă acesta conține cel puțin o pereche descentrată, sau
mesajul NU în caz contrar.
Exemplu: dacă textul citit este
crezi ca poti sa creezi ceva original
se afișează pe ecran mesajul
DA (10p.)

Subiectul · pagina 3

Ministerul Educaţiei Naționale
Centrul Naţional de Evaluare şi Examinare
Probă scrisă la informatică Simulare
Limbajul C/C++
Filiera teoretică, profilul real, specializările: matematică-informatică, matematică-informatică intensiv informatică
Filiera vocaţională, profilul militar, specializarea matematică-informatică
3 din 3
SUBIECTUL al III-lea (30 de puncte)
Pentru itemul 1, scrieţi pe foaia de examen litera corespunzătoare răspunsului corect.
1. Subprogramul f este definit
alăturat. Valoarea
f(2203,2018) este:
(4p.)
int f(int x, int y)
{ if(x*y==0) return 0;
if(x%2==y%2) return 1+10*f(x/10,y/10);
return 10*f(x/10,y/10);
}
a. 1100 b. 11 c. 2 d. 0
Scrieţi pe foaia de examen răspunsul pentru fiecare dintre cerinţele următoare.
2. Utilizând metoda backtracking, se generează toate posibilitățile de a forma șiraguri de câte
4 mărgele de culori distincte din mulţimea {roșu, albastru, roz, portocaliu,
verde}, astfel încât în fiecare șirag nu pot fi pe poziții alăturate mărgele roșii și albastre.
Două șiraguri sunt distincte dacă au cel puțin o mărgea de culoare diferită sau dacă
ordinea culorilor mărgelelor este diferită.
Primele cinci soluţii generate sunt, în această ordine, (roșu, roz, albastru,
portocaliu), (roșu, roz, albastru, verde), (roșu, roz, portocaliu, albastru),
(roșu, roz, portocaliu, verde), (roșu, roz, verde, albastru). Scrieţi cea de a
şasea şi cea de a şaptea soluţie, în ordinea generării acestora. (6p.)
3. Se consideră subprogramul radical, cu trei parametri:
• n, prin care primeşte un număr natural (n∈∈∈∈[1,109]);
• x și y, prin care furnizează două numere naturale cu proprietatea că √n poate fi scris
sub forma x ∙ y, unde x are o valoare maximă.
Scrieţi definiţia completă a subprogramului.
Exemplu: pentru numărul n=15000, în urma apelului, x=50 şi y=6, iar pentru numărul
n=9, în urma apelului, x=3 şi y=1. (10p.)
4. Se consideră un șir ai cărui termeni sunt numere naturale nenule, de o singură cifră.
Numim număr asociat al acestui șir un număr natural format cu termenii șirului, în ordinea
în care aceștia apar în șir.
Exemplu: numărul asociat șirului 1, 2, 5, 3, 2 este 12532.
Fişierul text bac.txt conţine numere naturale din intervalul [1,9]: pe prima linie două
numere, x și y, iar pe a doua linie un șir de cel puţin trei şi cel mult 105 termeni. Numerele
aflate pe aceeași linie a fișierului sunt separate prin câte un spațiu.
Se cere inserarea valorilor x și y în șirul aflat pe a doua linie fișierului, astfel încât numărul
asociat șirului obținut să fie minim. Termenii șirului obținut se afișează pe ecran, separați
prin câte un spațiu.
Proiectați un algoritm eficient din punctul de vedere al memoriei utilizate și al timpului de
executare.
Exemplu: dacă fişierul bac.txt conţine numerele
9 6
1 7 5
atunci, pentru că numerele asociate șirurilor care se pot obține sunt 96175, 69175,
61975, 61795, 61759, 91675, 19675, 16975, 16795, 16759, 91765, 19765, 17965,
17695, 17659, 91756, 19756, 17956, 17596, 17569, pe ecran se afişează șirul:
1 6 7 5 9
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.)

Baremul

Deschide PDF-ul original

Baremul · pagina 1

Ministerul Educaţiei Naționale
Centrul Naţional de Evaluare şi Examinare
Probă scrisă la informatică Simulare
Filiera teoretică, profilul real, specializările: matematică-informatică, matematică-informatică intensiv informatică
Filiera vocaţională, profilul militar, specializarea matematică-informatică
Barem de evaluare şi de notare
1 din 2
Examenul de bacalaureat naţional 2018
Proba E. d)
Informatică
Barem de evaluare și de notare
(comun pentru limbajele C/C++ şi Pascal)
SIMULARE
Filiera teoretică, profilul real, specializările: matematică-informatică
matematică-informatică intensiv informatică
Filiera vocaţională, profilul militar, specializarea matematică-informatică
• Se punctează oricare alte modalităţi de rezolvare corectă a cerinţelor.
• Nu se acordă punctaje intermediare, altele decât cele precizate explicit prin barem.
Nu se acordă fracţiuni de punct.
• Se acordă 10 puncte din oficiu. Nota finală se calculează prin împărţirea punctajului
total acordat pentru lucrare la 10.
• Utilizarea unui tip de date care depăşeşte domeniul de valori precizat în enunţ este
acceptată dacă acest lucru nu afectează corectitudinea în funcţionarea programului.
• Se vor lua în considerare atât implementările concepute pentru compilatoare pe 16
biţi, cât şi cele pentru compilatoare pe 32 de biţi.
SUBIECTUL I (30 de puncte)
1. a 4p.
2. a) Răspuns corect: 135*234*# 6p. Se acordă câte 2p. pentru fiecare dintre
cele două triplete de cifre conform cerinței
și câte 1p. pentru fiecare dintre cele două
tipuri de simboluri (*,#) scrise conform
cerinței.
b) Răspuns corect: 6 4p.
c) Pentru algoritm pseudocod corect
-echivalenţă a prelucrării realizate,
conform cerinţei (*)
-corectitudine globală a algoritmului1)
6p.
5p.
1p.
(*) Se acordă numai 2p. dacă algoritmul are
o structură repetitivă conform cerinței,
principial corectă, dar nu este echivalent cu
cel dat.
Se va puncta orice formă corectă de
structură repetitivă conform cerinței.
d) Pentru program corect
-declarare a tuturor 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ţiuni este conform cerinței.
SUBIECTUL al II - lea (30 de puncte)
1. d 4p.
2. b 4p.
3. Pentru rezolvare corectă
-definire principial corectă a unei
înregistrări
-definire a câmpurilor înregistrării (*)
-declarare a variabilei
-corectitudine globală a secvenței1)
6p.
1p.
3p.
1p.
1p.
(*) Se acordă câte 1p. pentru fiecare câmp
definit conform cerinței.

Baremul · pagina 2

Ministerul Educaţiei Naționale
Centrul Naţional de Evaluare şi Examinare
Probă scrisă la informatică Simulare
Filiera teoretică, profilul real, specializările: matematică-informatică, matematică-informatică intensiv informatică
Filiera vocaţională, profilul militar, specializarea matematică-informatică
Barem de evaluare şi de notare
2 din 2
4. Pentru rezolvare corectă
-accesare a unui element al tabloului
-atribuire a valorilor indicate (*)
-corectitudine globală a secvenței1)
6p.
1p.
4p.
1p.
(*) Se acordă câte 1p. pentru fiecare
categorie de elemente cu valoarea indicată
(cu valoarea 8 - pe diagonala secundară, cu
valoarea 8 - pe direcția paralelă cu
diagonala secundară imediat deasupra
acesteia, cu valoarea 8 - pe direcția
paralelă cu diagonala secundară imediat
sub aceasta, cu valoarea 1).
5. Pentru program corect
-declarare a unei variabile care să memoreze
un șir de caractere
-citire a şirului
-verificare a proprietății cerute (*)
-afişare a datelor
-declarare variabile simple, corectitudine
globală a programului1)
10p.
1p.
1p.
6p.
1p.
1p.
(*) Se acordă câte 1p. pentru fiecare aspect
al cerinței (identificare a unui cuvânt,
determinare a numărului de litere ale unui
cuvânt, identificare cuvinte de lungime
pară/impară, identificare a unei perechi
descentrate, algoritm principial corect de
verificare a unei proprietăți, cuvinte suport
verificate).
SUBIECTUL al III - lea (30 de puncte)
1. a 4p.
2. Răspuns corect:
(roşu,roz,verde,portocaliu)
(roşu,portocaliu,albastru,roz)
6p. Se acordă câte 2p. pentru fiecare aspect al
cerinței (prima soluție, a doua soluție, ordine a
soluțiilor).
3. Pentru subprogram corect
-structură antet principial corectă
-declarare corectă a parametrilor
-determinare a numerelor cerute (**)
- furnizare a numerelor determinate
conform cerinței
-declarare a tuturor variabilelor locale,
corectitudine globală a subprogramului1)
10p.
1p.
1p.
6p.
1p.
1p.
(*) Se acordă câte 3p. pentru fiecare număr
conform cerinței.
4. a) Pentru răspuns corect
-descriere coerentă a algoritmului (*)
-justificare a unor elemente de eficienţă
2p.
1p.
1p.
(*) Se acordă punctajul chiar dacă
algoritmul ales nu este eficient.
b) Pentru program corect
-operaţii cu fişiere: declarare, pregătire
în vederea citirii, citire din fişier
-determinare a valorilor cerute (*, **)
-utilizare a unui algoritm eficient (***)
-afișare a datelor, declarare a tuturor
variabilelor, corectitudine globală a
programului1)
8p.
1p.
5p.
1p.
1p.
(*) Se acordă punctajul chiar dacă soluţia
propusă nu prezintă elemente de eficienţă.
(**) Se acordă numai 3p. pentru algoritm
principial corect, dar care nu conduce la
rezultatul cerut pentru toate cazurile.
(***) Se acordă punctajul numai pentru un
algoritm liniar care utilizează eficient
memoria
O soluţie posibilă compară numerele x și y
și, printr-o eventuală interschimbare,
asigură condiția x<=y; termenii șirului se
afișează pe măsura citirii din fișier, x
afișându-se imediat înaintea primului
termen mai mare decât el, iar y afișându-se
imediat înaintea primului termen dintre cei
rămași mai mare decât el.
1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.