Sunteți pe pagina 1din 2

Inspectoratul Școlar Județean Constanța

Simulare județeană - Examenul național de bacalaureat, februarie 2023


Proba Ed)
Informatică
Limbajul C/C++
Varianta 1
Filieră teoretică, profil real, specializare matematică-informatică / matematică-informatică
intensiv informatică
Filieră vocațională, profil militar, specializare matematică-informatică
• Toate subiectele sunt obligatorii. Se acordă 10 puncte din oficiu.
• Timpul de lucru efectiv este de 3 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ă.
• În grafurile din cerințe oricare muchie are extremități distincte și oricare două muchii diferă
prin cel puțin una dintre extremități.

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 de tip întreg, x memorând valoarea 6, iar y valoarea 3. Care dintre expresiile
C/C++ de mai jos are valoarea 0?
a. x/2-y==0 b. x==2*y c. (x-y)/y!=0 d. !(x+y>x%y+x/y)

2. Se generează toate şirurile de 3 note muzicale din mulţimea {do, re, mi, fa, sol, la, si}. Primele
trei soluţii generate sunt: (do, do, do), (do, do, re), (do, do, mi). Care este soluţia 100?

a. (mi, do, do) b. (mi, do, re) c. (mi, do, mi) d. (re, si, si)

3. Se consideră subprogramul alăturat: void f(int i)


Ce se va afișa pentru apelul f(12) și câte { if(i>0)
autoapeluri execută? { cout<<i ;
f(i/4);}
cout<<i;}

a. 1230312 3 b. 1230312 2 c. 12 3 0 3 12 2 d. 12 3 0 3 12 3

4. Un graf neorientat cu 5 vârfuri este reprezentat prin matricea 0 1 1 1 0


de adiacență alăturată. Indicați numărul minim de muchii ce 1 0 0 0 0
trebuie adăugate astfel încât să devină eulerian. .1 0 0 0 0
1 0 0 0 1
0 0 0 1 0
a. 2 b. 3 c. 4 d. 1
5. Fie arborele cu 9 noduri, cu etichete de la 1 la 9, și vectorul de tați (0, 3, 1, 5, 2, 5, 1, 5, 7).
Care sunt etichetele nodurilor care pot fi alese drept rădăcină astfel încât, în fiecare dintre aceste cazuri,
numărul de frunze ale arborelui să fie maxim.
a) 1, 2, 3, 4 b) 3, 4, 5, 7 c) 1, 2, 3, 5, 7 d) 1, 2, 3, 4, 5

SUBIECTUL II (40 de puncte)


1. Se consideră algoritmul alăturat, reprezentat în pseudocod.
S-a notat cu x%y restul împărţirii numărului natural x la numărul natural nenul y, iar cu [z] partea
întreagă a numărului real z.

Simulare județeană - Probă scrisă la INFORMATICĂ Varianta 1


Filieră teoretică, profil real, specializare matematică-informatică / matematică-informatică intensiv informatică
Filieră vocațională, profil militar, specializare matematică-informatică

Pagina 1 din 2
Inspectoratul Școlar Județean Constanța
a) Scrieţi valorile care se afişează dacă se citesc citeşte a,b (numere naturale nenule)
numerele 628321 și 825331. (6p.) c ←0; p ← 0
b) Dacă a=54321 scrieţi o valoare de cinci cifre care ┌cât timp a + b > 0 execută
poate fi citită pentru b, astfel încât prima valoare │┌dacă a%10 = b%10 şi a%2!=0
afișată să fie 134. (6p.) ││ atunci c ← c*10 + b%10
c) Scrieţi în pseudocod un algoritm echivalent cu cel ││ altfel p ← p*10 + a%10
dat în care structura cât timp...execută să fie │└■
înlocuită cu o structură repetitivă cu test final. (6p.)│ a ← [a/10]
d) Scrieţi programul C/C++ corespunzător │ b ← [b/10]
algoritmului dat. (10p.) └■
scrie c,’ ‘, p
2. Variabila a memorează datele unui angajat al unei firme pentru struct angajat
care se cunosc numele, prenumele, vârsta și data angajării ca în {char num[20], pren[20];
declararea alăturată. Numele și prenumele sunt texte fără spații. int v;
Scrieți instrucțiunile care permit citirea datelor angajatului și struct{ int z,l,a;
afișarea mesajului DA dacă s-a angajat în acest an (2023) sau NU }data_a;
în caz contrar. (6p.) }a;
cout<<strlen(s); i=0;
3. Ce se afişează pe ecran în urma executării while (i<strlen(s))
secvenţei de program alăturate, în care if (strchr("aeiou",s[i])!=NULL)
variabilele s și t memorează șiruri cu cel mult { strcpy(t,s+i+1);
15 caractere, iar variabila i este de tip întreg strcpy(s+i,t);
dacă șirul s este "caleidoscop"? (6p.) i=i+1; }
else i=i+2;
cout<<" "<<s;
SUBIECTUL al III-lea (30 de puncte)
1. Să se scrie funcția sum_div_prim care să determine suma divizorilor primi ai unui număr natural
transmis ca parametru. Funcția furnizează rezultatul prin intermediul unui parametru de ieşire.
Exemplu: dacă funcția va primi numărul 75 ca furniza 8 (3+5) (10p.)
2. O hartă se poate memora folosind o matrice de numere reale în care fiecare element reprezintă
înălțimea medie a unei zone de 1km2 față de nivelul mării. Cunoscând harta memorată pentru o regiune
dreptunghiulară de maxim 2000 km înălțime și 3000 km lățime în care înălțimile sunt în intervalul
[-5000, 5000], să se determine câte văi sunt în această regiune. O zonă este considerată vale dacă
înălțimea ei este mai mică decât a vecinilor de la nord, est, sud, vest. Dacă nu există văi în regiune se
va afișa mesajul nu exista.
𝟐, 𝟑𝟓 2,98 3,52 1,99
2,84 −𝟏, 𝟓𝟎 10,5 𝟏, 𝟑𝟓
Exemplu: dacă harta unei regiuni este 6,55 3,99 15,4 15,4 Se va afișa 5. (10p.)
10,5 5,98 𝟒, 𝟑𝟑 8,95
(𝟗, 𝟓𝟓 11,23 4,98 10,11)
3. La o bancă seiful principal se poate deschide folosind un cod special. Pentru a nu putea fi aflat de
oricine, directorul băncii a spart codul în numere de maxim 2 cifre, le-a amestecat cu numere false și
le-a scris în fișierul cod.in. Numerele false sunt în număr par de apariții. Pentru a forma codul numerele
bune se pun în ordinea crescătoare a valorii. Cunoscându-se valorile a cel mult 10000 numere din
fișier, scrieți un program, eficient din punctul de vedere al timpului de executare și al memoriei
utilizate, care să afle codul seifului și să îl afișeze pe ecran.
Exemplu: dacă fisierul cod.in conține numerele 11 3 11 11 12 2 11 12 3 11 12 3 11 3 12 11, se afișează
pe ecran 211 (2 apare o dată, 3 de patru ori, 11 de șapte ori, 12 apare de patru ori).
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.)
Simulare județeană - Probă scrisă la INFORMATICĂ Varianta 1
Filieră teoretică, profil real, specializare matematică-informatică / matematică-informatică intensiv informatică
Filieră vocațională, profil militar, specializare matematică-informatică

Pagina 2 din 2

S-ar putea să vă placă și