Textul subiectului și baremului
Subiect BAC Informatică Științe ale Naturii Pascal 2022 – sesiunea iunie–iulie, 22 iunie 2022, varianta 1
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 originalSubiectul · pagina 1
Ministerul Educației Centrul Național de Politici și Evaluare în Educație Probă scrisă la informatică Varianta 1 Limbajul Pascal Filieră teoretică, profil real, specializare științe ale naturii Pagina 1 din 2 Examenul naţional de bacalaureat 2022 Proba E. d) Informatică Limbajul Pascal 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. Indicați valoarea expresiei Pascal alăturate. 22 div 20*20 div 2 a. 0 b. 0.55 c. 10 d. 55 2. În secvenţa alăturată toate variabilele sunt de tip întreg, iar cele 20 de numere citite sunt naturale. Indicați instrucțiunile care pot înlocui punctele de suspensie astfel încât, în urma executării secvenţei obţinute, valoarea variabilei strM să fie 1 dacă toate valorile citite au fost strict mai mici decât 2022, sau 0 altfel. strM:=1; for i:=1 to 20 do begin read(k); ....... end; a. if k<2022 then strM:=1 else strM:=0; b. if k>=2022 then strM:=0 else strM:=1; c. if k<2022 then strM:=1; d. if k>=2022 then strM:=0; 3. Pentru a verifica dacă într-un tablou unidimensional există elementul cu valoarea x=18, se aplică metoda căutării binare, iar succesiunea de elemente ale tabloului a căror valoare se compară cu valoarea lui x pe parcursul aplicării metodei indicate este: 21, 16, 18. Indicați succesiunea de valori care pot fi elementele tabloului, în ordinea în care apar în acesta. a. (16,17,18,19,21,50,65) b. (4,16,18,21,52,63,70) c. (7,9,10,16,18,19,21) d. (16,17,18,21,30,49,50) 4. Variabila x memorează un număr natural nenul. Indicați valoarea maximă a expresiei Pascal alăturate. round(1+sqrt(x mod 100)) a. 10 b. 11 c. 99 d. 100 5. În secvența Pascal alăturată toate variabilele sunt întregi. Indicați expresia care poate înlocui punctele de suspensie astfel încât, în urma executării secvenţei obţinute, variabila r să memoreze valoarea 20, reprezentând câtul împărțirii întregi a lui 2022 la 100. r:=0; x:=100; y:=2022; repeat y:=y-x; r:=...... until x>y; a. r+1 b. r-1 c. r div 2 d. r*2 SUBIECTUL al II-lea (40 de puncte) 1. Algoritmul alăturat este reprezentat în pseudocod. S-a notat cu a%b restul împărţirii numărului natural a la numărul natural nenul b şi cu [c] partea întreagă a numărului real c. citeşte n (număr natural) i2; k0 ┌cât timp n≥i execută │┌cât timp n%i=0 execută ││ kk+1 ││ n[n/i] │└■ │┌dacă i=2 atunci ii+1 ││altfel ii+2 │└■ └■ scrie k a. Scrieţi ce se afișează în urma executării algoritmului dacă se citeşte numărul 56. (6p.) b. Scrieţi două numere din intervalul [10,99] care pot fi citite, astfel încât, pentru fiecare dintre acestea, în urma executării algoritmului, să se afişeze valoarea 1. (6p.) c. Scrieţi programul Pascal corespunzător algoritmului dat. (10p.) d. Scrieţi în pseudocod un algoritm, echivalent cu cel dat, înlocuind adecvat a doua structură cât timp...execută cu o structură repetitivă cu test final. (6p.)
Subiectul · pagina 2
Ministerul Educației Centrul Național de Politici și Evaluare în Educație Probă scrisă la informatică Varianta 1 Limbajul Pascal Filieră teoretică, profil real, specializare științe ale naturii Pagina 2 din 2 2. Tablourile unidimensionale A și B au valorile A=(21,18,16,7,5) și B=(49,15,14,3,2) și sunt interclasate în ordine crescătoare, fiind parcurse de la dreapta la stânga. Scrieți toate valorile elementelor tabloului B care se compară cu elementul cu valoarea 16 din tabloul A pe parcursul aplicării metodei. (6p.) 3. Pentru un material se memorează date specifice: denumire (o literă mare a alfabetului englez), preț unitar și cantitate (numere naturale). Variabilele denumire1, pret1 și cantitate1 memorează date specifice pentru un material, iar variabilele denumire2, pret2 și cantitate2 memorează date specifice pentru un alt material. Declarați variabilele denumire1 și denumire2 și scrieți o secvență de instrucțiuni Pascal astfel încât, în urma executării acesteia, să se afișeze pe ecran denumirea corespunzătoare materialului care are costul total (produsul dintre prețul unitar și cantitate) mai mare, sau mesajul egal dacă cele două materiale au costuri totale egale. (6p.) SUBIECTUL al III-lea (30 de puncte) 1. Se citește un număr natural, n (n∈[10,109)), în care nu există secvențe de mai mult de două cifre identice aflate pe poziții consecutive și se cere să se scrie numărul obținut din n prin înlocuirea fiecărei secvențe 22 cu câte o secvență 20. Dacă nu se înlocuiește nicio secvență, se scrie numărul nemodificat. Scrieţi, în pseudocod, algoritmul de rezolvare pentru problema enunțată. Exemplu: dacă n=202233228, se scrie 202033208. (10p.) 2. Pentru prevenirea eroziunii la Marea Neagră, autoritățile au hotărât înnisiparea unei plaje. Plaja a fost împărțită în parcele de formă pătrată cu latura de 1 metru, dispuse ca elementele unui tablou unidimensional, reținându-se nivelul fiecărei parcele, măsurat în metri, de la nivelul mării. Înnisiparea se realizează doar pe acele parcele care au nivelul strict mai mic decât al celei mai joase dintre parcelele vecine cu ea, adăugând nisip, astfel încât cele două să aibă același nivel. Două parcele sunt vecine dacă au o latură comună. Scrieți un program Pascal care citește de la tastatură un număr natural din intervalul [2,102], n, apoi cele n elemente ale unui tablou unidimensional, numere naturale din intervalul [1,10], reprezentând nivelurile parcelelor, în ordinea dispunerii acestora pe plajă. Programul afișează pe ecran cantitatea totală de nisip adăugată, măsurată în metri cubi. Exemplu: pentru n=12 și tabloul alăturat se vor înnisipa 3 4 9 3 6 3 2 4 4 5 3 8 parcelele marcate, pentru a fi aduse la nivelul parcelelor vecine corespunzătoare, și se va afișa valoarea 7 (7=1+3+1+2). (10p.) 3. Fișierul bac.txt conține numere naturale din intervalul [1,109], astfel: pe prima linie numărul x, iar pe a doua linie un șir de cel mult 106 numere, ordonate crescător. Numerele aflate pe aceeași linie a fișierului sunt separate prin câte un spațiu. Se cere să se afişeze pe ecran numărul de valori distincte din șirul aflat pe a doua linie a fișierului care aparțin intervalului [1,x]. Proiectați un algoritm eficient din punctul de vedere al timpului de executare și al memoriei utilizate. Exemplu: dacă fişierul are conținutul alăturat, pe ecran se afișează 7 9 1 1 1 2 2 3 5 5 5 5 6 6 7 8 10 10 12 15 21 21 a. Descrieți în limbaj natural algoritmul proiectat, justificând eficiența acestuia. (2p.) b. Scrieți programul Pascal corespunzător algoritmului proiectat. (8p.)
Baremul
Deschide PDF-ul originalBaremul · pagina 1
Ministerul Educaţiei Centrul Național de Politici și Evaluare în Educație Probă scrisă la informatică Varianta 1 Filieră teoretică, profil real, specializare științe ale naturii Barem de evaluare și de notare Pagina 1 din 2 Examenul naţional de bacalaureat 2022 Proba E. d) Informatică BAREM DE EVALUARE ȘI DE NOTARE (comun pentru limbajele C/C++ și Pascal) Varianta 1 Filieră teoretică, profil real, specializare științe ale naturii • Se punctează orice modalitate de rezolvare corectă a cerinţelor. • Nu se acordă punctaje intermediare, altele decât cele precizate explicit în barem. Nu se acordă fracțiuni de punct. Se acordă zece puncte din oficiu. Nota finală se calculează prin împărțirea la zece a punctajului total acordat pentru lucrare. • Utilizarea unui tip de date care depășește domeniul de valori precizat în enunț (de exemplu tipuri întregi cu semn pentru memorarea numerelor naturale, dimensiune a tablourilor) este acceptată din punctul de vedere al corectitudinii programului, dacă acest lucru nu afectează funcționarea sa. SUBIECTUL I (20 de puncte) 1c 2d 3b 4b 5a 5x4p. SUBIECTUL al II - lea (40 de puncte) 1. a) Răspuns corect: 4 6p. b) Pentru răspuns corect 6p. Se acordă câte 3p. pentru fiecare dintre cele două numere prime conform cerinței, și numai câte 2p. pentru fiecare dintre cele două numere prime dar care nu aparțin intervalului. c) Pentru program corect -declarare a 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țiunile repetitive este conform cerinței. d) Pentru algoritm pseudocod corect -utilizare a unei structuri repetitive cu test final (*) -aspecte specifice ale secvenței obținute prin înlocuire, conform cerinței (**) -algoritm complet, corectitudine globală a algoritmului1) 6p. 2p. 3p. 1p. (*) Se acordă punctajul chiar dacă algoritmul obținut nu este echivalent cu cel dat. Se va puncta orice formă de structură repetitivă conform cerinței (repetă...până când, do...while, repetă...cât timp, execută...până când, execută...cât timp etc.). (**) Se acordă numai 2p. dacă doar unul dintre aspectele specifice (condiție de echivalență pentru prima iterație, expresie logică pentru test final) este conform cerinței. 2. Răspuns corect: 14, 15, 49 6p. Se acordă numai 2p. dacă doar una dintre valori este conform cerinței, numai 4p. dacă doar două dintre valori sunt conform cerinței și numai 5p. dacă, în plus față de cele trei valori sunt precizate și alte valori. 3. Pentru răspuns corect -declarare a varibilelor cerute -afișare a mesajelor cerute (*) -corectitudine globală a secvenței1) 6p. 1p. 4p. 1p. (*) Se acordă câte 2p. pentru fiecare aspect (comparare a costurilor pentru toate cazurile, mesaje corespunzătoare cazurilor tratate) conform cerinței. SUBIECTUL al III - lea (30 de puncte) 1. Pentru algoritm corect -citire a datelor -determinare a valorii cerute (*) -afișare a datelor -scriere principial corectă a structurilor de control (**) 10p. 1p. 6p. 1p. 2p. (*) Se acordă câte 1p. pentru fiecare aspect (identificare a unei cifre, identificare a unei perechi de cifre de pe poziții consecutive, înlocuire a unei cifre, secvențe suport înlocuite, ordine a cifrelor, secvențe suport păstrate - inclusiv cifrele nule de la finalul numărului) conform cerinței. (**) Se va puncta orice formă corectă de structură repetitivă sau decizională.
Baremul · pagina 2
Ministerul Educaţiei Centrul Național de Politici și Evaluare în Educație Probă scrisă la informatică Varianta 1 Filieră teoretică, profil real, specializare științe ale naturii Barem de evaluare și de notare Pagina 2 din 2 2. Pentru program corect -declarare a unei variabile care să memoreze un tablou unidimensional -citire a elementelor tabloului -determinare a valorii cerute (*) -afișare a datelor -declarare a variabilelor simple, citire a datelor simple, corectitudine globală a programului1) 10p. 1p. 1p. 6p. 1p. 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (identificare a două parcele vecine pentru cel puțin unul dintre cazurile de plasare a acestora, algoritm de bază pentru determinarea unei valori minime dintr-o serie de maximum două, parcele vecine suport pentru determinarea minimului - pentru toate cazurile particulare, identificare a unei parcele care se înnisipează, algoritm de bază pentru însumarea unei serii de valori, valori suport însumate) conform cerinței. 3. a) Pentru răspuns corect -coerență a descrierii algoritmului (*) -justificare a elementelor de eficiență 2p. 1p. 1p. (*) Se acordă punctajul chiar dacă algoritmul ales nu este eficient. (**) Se acordă numai 3p. dacă algoritmul este principial corect, dar nu oferă rezultatul cerut pentru toate seturile de date de intrare. (***) Se acordă punctajul numai pentru un algoritm liniar care utilizează eficient memoria. Se memorează ultimele două valori citite, în această ordine, ant și crt, precum și numărul cerut, nr. O soluţie posibilă inițializează numărul ant cu 0 și parcurge datele din fișier citind valoarea curentă crt (eventual cât timp crt≤x), incrementând numărul nr pentru fiecare valoare distinctă din șir (crt≠ant) din intervalul cerut (crt≤x); valoarea ant se actualizează la fiecare pas. b) Pentru program corect -operații cu fișiere: declarare, pregătire în vederea citirii, citire din fișier -determinare a valorii cerute (*),(**) -utilizare a unui algoritm eficient (***) -declarare a variabilelor, afișare a datelor, corectitudine globală a programului1) 8p. 1p. 5p. 1p. 1p. 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.