DauExamen
Bacalaureat 2024 Sesiunea specială Sn 3h

Informatică 2024

Informatică – Sn – Bacalaureat 2024, sesiunea specială (varianta 04)

Textul subiectului
Ministerul Educației Centrul Național de Politici și Evaluare în Educație Examenul național de bacalaureat 2024 Proba E. d) INFORMATICĂ Limbajul C/C++ Varianta 4 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. Variabilele x şi y sunt de tip real. Indicați o expresie C/C++ echivalentă !(x>25 || y<6) cu cea alăturată. a. x<=25 && y>=6 b. x<=25 || y>=6 c. x<=25 && y<6 d. x<=25 || y<6 2. Tablourile unidimensionale A și B au elementele: A=(21,17,15,10,4) și B=(49,25,10,7,1). Indicați tabloul obținut în urma interclasării lui A și B în ordine descrescătoare. a. (49,25,15,10,4) b. (49,21,25,17,15,10,10,7,4,1) c. (49,21,25,17,10,15,7,10,1,4) d. (49,25,21,17,15,10,10,7,4,1) 3. Indicați o expresie C/C++ care are valoarea 1. a. ceil(0.2024+1)>ceil(0.2024)+1 b. ceil(0.2024)*ceil(0.2024)>1 c. 20.24==ceil(-20.24) d. 20.24+1<ceil(20.24)+1 4. În secvența alăturată toate variabilele sunt de tip întreg și memorează for(d=1;d<=x;d++) valori din intervalul [2,109]. Indicați valoarea memorată în variabila z în if(x%d==0 && y%d==0) urma executării secvenței, pentru orice valoare nenulă a variabilelor x și y. z=d; a. cel mai mic divizor comun lui x și y b. cel mai mare divizor comun lui x și y c. cel mai mic divizor prim comun lui x și y d. cel mai mare divizor prim comun lui x și y 5. În secvența alăturată toate variabilele sunt de tip întreg. s=0; Știind că se citesc de la tastatură 10 numere din intervalul for(i=1;i<=10;i++) [0,105], indicați expresia care poate înlocui punctele de { cin>>x; | scanf("%d",&x); suspensie astfel încât, în urma executării secvenței obținute, s=..........; valoarea variabilei s să fie egală cu ultima cifră a sumei } numerelor citite. a. s+x%10 b. x%10 c. (s+x)%10 d. s%10+x%10 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, n≥2) i1 nenul b şi cu [c] partea întreagă a numărului real c. ┌cât timp i≤n execută a. Scrieţi ce se afișează dacă se citeşte numărul 10. (6p.) │ mi │┌cât timp m%2=0 execută b. Scrieţi două valori distincte care pot fi citite astfel încât, în urma ││ m[m/2] executării algoritmului, pentru fiecare dintre acestea, numărul de valori │└■ egale cu 1 afișate să fie 4. (6p.) │┌dacă m≠i atunci ││ scrie m,’ ’ c. Scrieţi programul C/C++ corespunzător algoritmului dat. (10p.) │└■ d. Scrieţi în pseudocod un algoritm echivalent cu cel dat, înlocuind │ ii+1 adecvat prima structură repetitivă cât timp...execută cu o └■ structură de tip pentru...execută. (6p.) 2. Pentru a verifica dacă în tabloul unidimensional (48,24,16,14,9,8,4) există elementul cu valoarea x se aplică metoda căutării binare. Știind că valoarea x a fost comparată cu trei elemente ale tabloului pe parcursul aplicării metodei, scrieți două valori posibile ale lui x. (6p.) Probă scrisă la INFORMATICĂ Varianta 4 Limbajul C/C++ Filieră teoretică, profil real, specializare științe ale naturii Pagina 1 din 2 Ministerul Educației Centrul Național de Politici și Evaluare în Educație 3. Pentru un telefon achiziționat în anul curent se memorează următoarele date: o literă corespunzătoare tipului sistemului de operare (litera A pentru Android sau litera W pentru Windows), precum și luna achiziționării (număr natural din intervalul [1,5]). Variabilele tip1 și luna1 memorează litera corespunzătoare tipului sistemului de operare, respectiv luna achiziționării unui telefon, iar variabilele tip2 și luna2 memorează litera corespunzătoare tipului sistemului de operare, respectiv luna achiziționării unui alt telefon. Declarați variabilele tip1 și tip2 și scrieți o secvență C/C++ în urma executării căreia să se afișeze pe ecran mesajul Aceeasi luna, în cazul în care telefoanele sunt achiziționate în aceeași lună, sau tipul sistemului de operare al ultimului telefon achiziționat, în caz contrar. Exemplu: dacă tip1 memorează litera A, tip2 memorează litera W, luna1=4 și luna2=1, se afișează pe ecran cuvântul Android (6p.) SUBIECTUL al III-lea (30 de puncte) 1. La un laborator sunt studiate aglomerările de fulgi de nea formate din câte nouă cristale de patru tipuri diferite date (notate cu 1, 2, 3 sau 4), astfel încât din fiecare tip să existe cel puțin câte un cristal. O astfel de aglomerare de fulgi a fost reprezentată printr-un număr natural, în care fiecare cifră reprezintă tipul unui cristal. Se citește un număr natural, n (n∈[0,109)), și se cere să se scrie valoarea 1, dacă prin n este reprezentată o aglomerare de fulgi de nea dintre cele studiate, sau 0 în caz contrar. Scrieți în pseudocod algoritmul corespunzător. Exemplu: dacă n=112243413 se scrie 1, iar dacă n=12314 sau n=112253513 sau n=112243457 sau n=111122223, se scrie 0. (10p.) 2. Fiind date două numere naturale a și b, numim valoare generată de a și b un număr obținut din a prin alipirea la stânga sau la dreapta sa a cifrelor lui b, în ordinea în care apar în acesta. Exemplu: dacă a=123 și b=45, se pot obține două numere generate de acestea: 12345 și 45123. Scrieţi un program C/C++ care citeşte de la tastatură două numere naturale din intervalul [2,50], n, și k, şi construiește în memorie un tablou unidimensional cu n elemente, numerotate de la 1 la n, în care oricare al i-lea element (i∈[1,n]) este egal cu cea mai mică valoare generată de i și de câtul împărțirii lui k la i. Programul afişează pe ecran elementele tabloului obţinut, separate prin câte un spaţiu. Exemplu: pentru n=7 și k=4, se obține tabloul (14,22,13,14,5,6,7) pentru n=7 și k=10, se obține tabloul (101,25,33,24,25,16,17). (10p.) 3. Fişierul numere.in conţine un şir de cel mult 106 numere naturale din intervalul [0,99]. Numerele din fişier sunt separate prin câte un spaţiu. Se cere să se determine primul număr din şir care conţine cea mai mare cifră ce apare în scrierea numerelor din fișier. Numărul determinat se afişează pe ecran. 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 2 12 34 5 38 30 87 70 11 8 82 25 se afişează pe ecran valoarea 38. 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 4 Limbajul C/C++ Filieră teoretică, profil real, specializare științe ale naturii Pagina 2 din 2

Alte subiecte la Informatică – Sn