DauExamen
Bacalaureat 2026 Sesiunea august Sn 3h

Informatică 2026

Informatică – Sn – Bacalaureat 2026, sesiunea august

Textul subiectului
Ministerul Educaţiei și Cercetării Centrul Naţional pentru Curriculum şi Evaluare Examenul național de bacalaureat 2026 Proba E. d) Informatică Limbajul C/C++ Varianta 1 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. Variabila x este de tip întreg și memorează un număr natural nenul. Indicați o expresie C/C++ care are valoarea 1 dacă și numai dacă valoarea variabilei x este divizibilă cu 26, dar NU este divizibilă cu 2026. a. !(x%26!=0) || x%2026!=0 b. !(x%26!=0) && !(x%2026==0) c. !(x%26==0 || x%2026==0) d. !(x%26!=0 && x%2026!=0) 2. În secvenţa de instrucţiuni C/C++ de mai jos toate variabilele sunt de tip întreg. for(i=1;i<=5;i++) 2 3 2 3 2 { for(j=1;j<=5;j++) 3 0 3 0 3 if(i%2==0) cout<<3*(j%2)<<′ ′; | printf(″%d ″,3*(j%2)); 2 3 2 3 2 else cout<<......<<′ ′; | printf(″%d ″,......); 3 0 3 0 3 cout<<endl; | printf(″\n″); 2 3 2 3 2 } 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)%2 b. i%2+j%2 c. 2+(i+1)%2 d. 2+(j+1)%2 3. Pentru a verifica dacă într-un tablou unidimensional cu 7 elemente există elementul cu valoarea x=23, se aplică metoda căutării binare. Indicați un exemplu de elemente ale tabloului, în ordinea în care ele apar în acesta, astfel încât succesiunea de elemente ale căror valori se compară cu valoarea lui x pe parcursul aplicării metodei indicate să fie 49, 21, 23. a. (-10,-8,15,49,23,21,50) b. (-49,49,-21,21,-23,23,-95) c. (-10,21,23,49,50,70,95) d. (21,22,23,49,53,70,95) 4. Variabilele x și y sunt de tip întreg și memorează valori din intervalul [-102,102]. pow(x+y,2) Indicați o expresie C++ echivalentă cu cea alăturată. a. pow(x,2)+pow(y,2)+2*x*y b. 2*pow(x,1)+2*pow(y,1)+x*y c. pow(x,2)+pow(y,2) d. pow(2,x+y) 5. În secvența alăturată toate variabilele sunt întregi și memorează valori x=x0; y=y0; z=x*y; strict pozitive. Indicați o expresie care poate înlocui punctele de while(x!=y) suspensie, astfel încât, în urma executării secvenţei obţinute, variabila z if(x>y)x=x-y; să memoreze cel mai mic multiplu comun al valorilor memorate în else y=y-x; x0 şi y0. z=.......; a. (x+y)/2 b. x/z c. z/y d. z-x Probă scrisă la informatică Varianta 1 Limbajul C/C++ Filieră teoretică, profil real, specializare științe ale naturii Pagina 1 din 2 Ministerul Educaţiei și Cercetării Centrul Naţional pentru Curriculum şi Evaluare SUBIECTUL al II-lea (40 de puncte) 1. Algoritmul alăturat este reprezentat în pseudocod. citește n S-a notat cu a%b restul împărțirii numărului natural a la numărul natural (număr natural nenul) nenul b și cu [c] partea întreagă a numărului real c. s0; i1 ┌cât timp s<n execută a. Scrieți valoarea afișată dacă se citește numărul 10. (6p.) │ ji; nr0 │┌cât timp j≠0 execută b. Scrieți două valori care pot fi citite astfel încât, în urma executării ││ nrnr+j%2; j[j/2] algoritmului, pentru fiecare dintre acestea, numărul afișat să fie 31. (6p.) │└■ │┌dacă nr=1 atunci c. Scrieți programul C/C++ corespunzător algoritmului dat. (10p.) ││ ss+i d. Scrieți în pseudocod un algoritm, echivalent cu cel dat, înlocuind a doua │└■ structură cât timp...execută cu o structură repetitivă cu test final. │ ii+1 └■ (6p.) scrie s 2. Tabloul C este obţinut prin interclasarea descrescătoare a elementelor din tablourile unidimensionale A=(128,78,8,5,3) şi B=(78,18,10,6,4,1), parcurse de la stânga la dreapta, la fiecare pas avându-se în vedere o pereche de elemente (x,y), unde x este un element din A, iar y este un element din B. Scrieţi perechile avute în vedere, în ordinea prelucrării, pentru determinarea celui de al cincilea, respectiv a celui de al șaselea element obținut în C. (6p.) 3. La sfârșitul unei zile, într-o casă de marcat a unui magazin sunt două tipuri de bancnote, de valori (cupiuri) cunoscute, din fiecare tip fiind prezente un anumit număr de exemplare. Variabilele întregi v1 și n1 memorează cupiura, respectiv numărul de exemplare ale primului tip de bancnotă, iar variabilele întregi v2 și n2 memorează cupiura, respectiv numărul de exemplare ale celui de al doilea tip de bancnotă. Scrieţi o secvenţă de instrucțiuni C/C++ în urma executării căreia se afişează pe ecran suma totală de bani prezentă în casa de marcat. (6p.) SUBIECTUL al III-lea (30 de puncte) 1. Un număr este reprezentat în baza b dacă cifrele sale aparțin intervalului [0,b-1]. Se citesc două numere naturale, n și b (b∈[2,10]), și se cere să se scrie 1, dacă n este reprezentat în baza b, sau -1 în caz contrar. Scrieţi, în pseudocod, algoritmul de rezolvare a problemei enunțate. Exemplu: dacă n=32412 și b=8, se scrie 1, iar dacă n=32412 și b=3, se scrie -1. (10p.) 2. Scrieţi un program C/C++ care citeşte de la tastatură un număr natural, n (n∈[2,50]), apoi un șir de 2∙n valori, elemente ale unui tablou unidimensional, numere naturale, reprezentând date despre n flori, de tipuri diferite. Pentru fiecare floare, tabloul memorează, pe poziții consecutive, în această ordine, codul ei (un număr din intervalul [10,102]) și o valoare naturală din intervalul [1,9], reprezentând necesarul zilnic de lumină, dat în număr de ore. Programul afișează pe ecran codul florii cu cel mai mic necesar de lumină, iar dacă sunt mai multe astfel de flori, se alege cea care are codul cel mai mic. Exemplu: pentru n=6 și tabloul (20,7,17,3,60,5,92,6,15,3,49,7) se afișează pe ecran 15 (10p.) 3. În cadrul testării unor echipamente de comunicații se transmite un șir de biți (0 sau 1), care conține cel puțin un bit 1, iar atât primul cât și ultimul bit sunt 0. Șirul conține cel puțin un mesaj de avertisment de forma unui bit 1 sau a unei succesiuni de biți 1, aflați pe poziții consecutive în șir. Lungimea mesajului este egală cu numărul biților care îl compun. Fișierul bac.txt conține cel mult 106 numere naturale din mulțimea {0,1}, reprezentând șirul de biți transmis. Numerele sunt separate prin câte un spațiu. Se cere să se afișeze pe ecran biții care compun cel mai lung mesaj de avertisment din șirul aflat în fișier. Dacă există mai multe astfel de mesaje, se afișează doar biții unuia dintre acestea. Biții afișați sunt separați prin câte un spațiu. 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 0 1 0 1 1 1 1 1 0 0 1 1 1 1 1 1 1 1 0 1 0 se afișează pe ecran 1 1 1 1 1 1 1 1 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 1 Limbajul C/C++ Filieră teoretică, profil real, specializare științe ale naturii Pagina 2 din 2

Alte subiecte la Informatică – Sn