Textul subiectului și baremului
Simulare BAC Informatică Științe ale Naturii Pascal 2022 – 30 martie 2022
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ă Simulare
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
Simulare
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. Indicați o expresie care are valoarea true dacă
și numai dacă expresia Pascal alăturată are valoarea true. (4p.)
(x<=3) or (x>30)
a. not(x<3) and (x<30) b. not((x>=3) and (x<=30))
c. not((x<3) or (x<=30)) d. not(x>3) or not(x<=30)
2. Tablourile unidimensionale A și B au valorile A=(20,16,9,4,2) și B=(50,18,16,2,1). Pentru a
determina al 6-lea element obținut în urma interclasării tablourilor în ordine crescătoare, se compară
elementul cu valoarea xa din A cu elementul cu valoarea xb din B. Indicați valorile lui xa și xb.
a. xa=4 și xb=16 b. xa=9 și xb=16 c. xa=16 și xb=18 d. xa=16 și xb=16
3. Într-o seră se folosesc vase pătrate, care conțin câte o singură floare (lalea sau narcisă). Vasele sunt
așezate pe trei rânduri și sunt aliniate ca în figura de mai jos.
Variabilele i și j sunt întregi. Indicați expresia care poate înlocui punctele de suspensie astfel încât, în
urma executării secvenței obținute, pe ecran să se afișeze trei linii, a câte 9 litere, fiecare linie
reprezentând, în ordine, succesiunea de flori aflate pe un rând al serei, notându-se cu L lalelele și cu N
narcisele, ca în figura de mai jos.
for i:=1 to 3 do
begin for j:=1 to 9 do
if ..........then write('N')
else write('L');
writeln
end;
N L N L N L N L N
L N L N L N L N L
N L N L N L N L N
a. i mod 2=j mod 2 b. i mod 2<>j mod 2
c. (i mod 2=1) and (j mod 2=0) d. (i mod 2=0) and (j mod 2=1)
4. Variabila x este de tip real și poate memora un număr real din intervalul
[10,30]. Indicați numărul valorilor distincte pe care le poate avea expresia
Pascal alăturată. (4p.)
trunc(sqrt(x))
a. 1 b. 2 c. 3 d. 4
5. În secvența Pascal alăturată toate variabilele sunt întregi, iar m>n.
Indicați expresia care poate înlocui punctele de suspensie, astfel
încât, în urma executării secvenței obținute, variabila dif să
memoreze diferența m-n.
(4p.)
dif:=0; x:=n; y:=m;
repeat
x:=x+1;
y:=y-1;
dif:=dif+2
until x>=y;
if x>y then dif:=...;
a. dif-2 b. dif-1 c. dif+1 d. dif+2Subiectul · pagina 2
Ministerul Educației Centrul Național de Politici și Evaluare în Educație Probă scrisă la informatică Simulare Limbajul Pascal Filieră teoretică, profil real, specializare științe ale naturii Pagina 2 din 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 [a] partea întreagă a numărului real a. citește n,x (numere naturale nenule) nr0; i1 ┌cât timp i≤n execută │ citește y (număr natural) │┌cât timp y≠0 și y%2≠x%2 execută ││ y[y/10] │└■ │┌dacă y=x atunci nrnr+1 │└■ │ ii+1 └■ scrie nr a. Scrieți ce se afișează în urma executării algoritmului dacă se citesc, în această ordine, numerele 6, 16, 4273, 1679, 3165, 16, 200, 167. (6p.) b. Dacă primele două numere citite sunt, în această ordine, 2 și 22, scrieți o secvență de numere distincte din intervalul [103,104) care pot fi citite în continuare astfel încât, în urma executării algoritmului, să se afișeze valoarea 2. (6p.) c. Scrieți programul Pascal corespunzător algoritmului dat. (10p.) d. 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.) 2. Pentru a verifica dacă în tabloul unidimensional (7,8,12,15,17,20,22) există elementul cu valoarea x, număr natural, se aplică metoda căutării binare. Scrieți trei valori posibile ale lui x pentru ca succesiunea de elemente ale tabloului a căror valoare se compară cu valoarea lui x pe parcursul aplicării metodei indicate să fie 15, 20, 17. (6p.) 3. Două orașe participă la un studiu și pentru fiecare dintre acestea se memorează date obținute în urma recensământului populației: un cod al orașului (reprezentat ca o literă mare a alfabetului englez), numărul de locuitori (număr natural) și suprafața (număr real). Variabilele cod1, nrLocuitori1 și suprafata1 memorează datele obținute despre primul oraș, iar variabilele cod2, nrLocuitori2 și suprafata2 memorează datele obținute despre al doilea oraș. Densitatea unui oraș este un număr egal cu raportul dintre numărul de locuitori și suprafața acestuia. Declarați variabilele cod1 și cod2 , respectiv suprafata1 și suprafata2 și scrieți o secvență de instrucțiuni Pascal în urma executării căreia să se afișeze pe ecran codul acelui oraș, dintre cele două precizate mai sus, care are densitatea mai mare, sau mesajul egale, dacă cele două densități sunt egale. (6p.) SUBIECTUL al III-lea (30 de puncte) 1. Se citesc trei numere naturale nenule, x, y și n (x<y<n), și se cere să se scrie cea mai mare valoare naturală din intervalul [1,n] pentru care atât restul împărțirii la x, cât și restul împărțirii la y, sunt egale cu 2, sau 0 dacă nu există o astfel de valoare. Scrieți, în pseudocod, algoritmul de rezolvare a problemei enunțate. Exemplu: pentru x=10, y=101 și n=3000, se scrie numărul 2022 (pentru numerele 2, 1012 și 2022 atât restul împărțirii la 10, cât și restul împărțirii la 101, este 2). (10p.) 2. Un șir de valori naturale reprezintă o listă a unor date codificate de identificare ale invitaților la o petrecere; fiecare invitat are un prenume și un nume, formate din câte un singur cuvânt. Cuvintele sunt codificate prin numere naturale nenule, iar codurile corespunzătoare prenumelui, respectiv numelui unei persoane apar în listă în această ordine, urmate de o valoare 0. Scrieți un program Pascal care citește de la tastatură numere naturale, în această ordine: un număr n (n[2,100]), cele 3n elemente ale unui tablou unidimensional, numere din intervalul [0,104], reprezentând o listă de date de tipul precizat mai sus, apoi un număr nenul x. Programul afișează pe ecran, separate prin câte un spațiu, codificări ale numelor tuturor invitaților care au prenumele codificat prin x, ca în exemplu, sau mesajul NU dacă nu există astfel de invitați. Exemplu: pentru n=4, tabloul (10,121,0,101,512,0,10,9876,0,2103,10,0) și x=10 se afișează pe ecran 121 9876 (10p.) 3. Se citește de la tastatură un număr natural, n (n[1,109]), și se cere să se scrie în fișierul text bac.txt cel mai mare număr natural p cu proprietatea că numărul 9p este divizor al numărului obținut prin evaluarea produsului 1∙2∙3∙...∙n. Proiectați un algoritm eficient din punctul de vedere al timpului de executare și al memoriei utilizate. Exemplu: dacă n=14, fișierul conține numărul 2 (92=81 este divizor al lui 1∙2∙3∙..∙14=87178291200). 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ă Simulare 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) Simulare 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ă corectitudinea în funcționarea programului. SUBIECTUL I (20 de puncte) 1d 2d 3a 4c 5b 5x4p. SUBIECTUL al II - lea (40 de puncte) 1. a) Răspuns corect: 3 6p. b) Pentru răspuns corect 6p. Se acordă câte 2p. pentru fiecare aspect (număr de valori scrise, primul număr, al doilea număr) conform cerinței. Cele două numere conform cerinței sunt de forma 22𝑥𝑦̅̅̅̅̅̅̅ , unde x și y sunt cifre impare. 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 principial corectă a unei structuri repetitive de tip pentru...execută (*) -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 acordă câte 1p. pentru fiecare aspect (expresie limită inferioară contor, expresie limită superioară contor, doar actualizare automată contor) conform cerinței. 2. Pentru răspuns corect 6p. Se acordă câte 2p. pentru fiecare dintre cele trei numere conform cerinței (oricare dintre numerele 16,17,18,19). 3. Pentru răspuns corect -declarare a variabilelor, conform cerinței (*) -determinare a datelor cerute (**) -corectitudine globală a secvenței1) 6p. 2p. 3p. 1p. (*) Se acordă câte 1p. pentru fiecare tip de variabile (caractere, numere reale) conform cerinței. (**) Se acordă câte 1p. pentru fiecare aspect (raport pentru calculul densității, cod corespunzător densității mai mari, mesaj) conform cerinței. SUBIECTUL al III - lea (30 de puncte) 1. Pentru algoritm corect -citire a datelor -determinare a valorii cerute (*) -tratare a cazului 0 și afișare fie a numărului, fie a valorii 0 -scriere principial corectă a structurilor de control (**) 10p. 1p. 6p. 1p. 2p. (*) Se acordă câte 2p. pentru fiecare aspect (identificare a unui număr corespunzător restului cerut, algoritm de bază pentru determinarea ultimei/celei mai mari valori cu o anumită proprietate dintr-o serie, valori suport cu proprietatea cerută identificate) 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ă Simulare 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 de tip tablou unidimensional -citire a datelor în ordinea indicată -determinare a valorilor cerute (*) -tratare a cazului NU și afișare fie a codurilor în formatul cerut, fie a mesajului indicat -declarare a variabilelor simple, corectitudine globală a programului1) 10p. 1p. 1p. 6p. 1p. 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (parcurgere a unor elemente ale unui tablou, identificare a unei valori x date în cadrul elementelor tabloului, identificare a codului unui nume corespunzător codului unui prenume, tratare a cazului în care codul x dat corespunde unui nume, valori nenule pentru coduri, valori suport identificate) 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 cel mult liniar care utilizează eficient memoria. O soluție posibilă are în vedere că 9=32 și parcurge numerele naturale din intervalul [2,n], determinând pentru fiecare număr curent k numărul t de apariții ale lui 3, în descompunerea în factori primi a lui k, și realizând pe parcurs suma tuturor valorilor t determinate (st). Valoarea cerută este [st/2]. O altă soluție posibilă determină valorile st astfel: st=[n/3]+[n/32]+[n/33]+[n/34]+ ...+0 Valoarea cerută este [st/2]. b) Pentru program corect -operații cu fișiere: declarare, pregătire în vederea scrierii, scriere în fișier -determinare a valorii cerute (*),(**) -utilizare a unui algoritm eficient (***) -declarare a variabilelor, citire a datelor, corectitudine globală a programului1) 8p. 1p. 5p. 1p. 1p. 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.