Textul subiectului și baremului
Test de antrenament BAC Informatică Științe ale Naturii Pascal 2020 – testul 7
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 și Cercetării
Centrul Național de Evaluare și Examinare
Probă scrisă la informatică Testul 7
Limbajul Pascal
Filieră teoretică, profil real, specializare științe ale naturii
Pagina 1 din 2
Examenul de bacalaureat național 2020
Proba E. d)
Informatică
Limbajul Pascal
Testul 7
Filieră teoretică, profil real, specializare științe ale naturii
• 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ă.
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. Expresia Pascal
not (x<2001) and (x<=2002) or (x>=2019) and not (x>2020)
are valoarea true dacă și numai dacă valoarea memorată de variabila reală x aparține reuniunii:
a. {2001} [2002,2019] {2020} b. [2001,2002] {2019} {2020}
c. [2001,2002] {2019,2020} d. [2001,2002] [2019,2020]
2. Pentru a verifica dacă în tabloul unidimensional (2,4,7,8,14,17,30) există elementul cu valoarea x
se aplică metoda căutării binare. Știind că valoarea x a fost comparată cu două elemente ale tabloului pe
parcursul aplicării metodei, două valori ale lui x ar putea fi:
a. 4, 17 b. 7, 14 c. 2, 30 d. 2, 4
3. Tabloul unidimensional A este (2,6,7,10,16), iar în urma interclasării lui în ordine crescătoare cu
tabloul B se obține tabloul (2,5,6,7,9,10,16,16,27,49). Indicați elementele tabloului B, în ordinea
apariției lor în acesta.
a. (2,6,7,10,16,5,9,16,27,49) b. (2,3,6,3,7,9,10,17,16,33)
c. (49,27,16,9,5) d. (33,17,9,3,3)
4. Variabilele x, y și i sunt de tip întreg și au valori nenule. Indicați
instrucțiunea care realizează o prelucrare echivalentă cu cea alăturată.
x:=trunc(y div 2020);
a. x:=2020 div y; b. x:=y div 2020;
c. x:=y;
for i:=2 to 2020 do x:=x*y;
d. x:=2020;
for i:=2 to y do x:=x*2020;
5. Indicați o secvență de instrucțiuni care realizează interschimbarea valorilor variabilelor întregi x și y.
a. x:=x-y; y:=x-y; x:=x-y; b. x:=x+y; y:=x+y; x:=x+y;
c. x:=x+y; y:=x-y; x:=x-y; d. x:=x-y; y:=x+y; x:=x+y;
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 nenul)
x1; m0; p1
┌cât timp x<10 execută
│ cnn
│┌cât timp cn≠0 execută
││ ccn%10; cn[cn/10]
││┌dacă c=x atunci
│││ mc*p+m; pp*10
││└■
│└■
│ xx+2
└■
scrie m
a. Scrieți ce se afișează dacă se citește numărul 253387. (6p.)
b. Scrieți cel mai mic și cel mai mare număr din intervalul [10,102)
care pot fi citite astfel încât, pentru fiecare dintre acestea, în urma
executării algoritmului, să se afișeze 0. (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ă repetitivă cu o structură repetitivă de alt tip.
(6p.)Subiectul · pagina 2
Ministerul Educației și Cercetării Centrul Național de Evaluare și Examinare Probă scrisă la informatică Testul 7 Limbajul Pascal Filieră teoretică, profil real, specializare științe ale naturii Pagina 2 din 2 2. Pentru o carte dintr-o bibliotecă se memorează numărul de inventar (număr natural cu cel mult cinci cifre) și prețul cărții (număr real). Variabilele inv1 și pret1 memorează numărul de inventar și prețul unei cărți, iar variabilele inv2 și pret2 memorează numărul de inventar și prețul unei alte cărți. Declarați variabilele pret1 și pret2 și scrieți o secvență de instrucțiuni în urma executării căreia să se afișeze pe ecran, separate printr-un spațiu, numărul de inventar al cărții cu prețul mai mic, urmat de media prețurilor celor două cărți. (6p.) 3. Toate variabilele din secvența alăturată sunt de tip char. Scrieți ce se afișează în urma executării secvenței. (6p.) c1:='s';c5:='o';c6:='u'; writeln(c5,c6); c1:=chr(ord(c1)-1); c2:=chr(ord(c1)-3); c3:=chr(ord(c1)+1); c4:=chr(ord(c1)+3); write(c1,c2,c3,c4); SUBIECTUL al III-lea (30 de puncte) 1. Se citesc două numere naturale, n (n≥2) și p și se cere să se scrie puterea la care apare numărul p în descompunerea în factori primi a lui n dacă p este număr prim, sau valoarea -1 în caz contrar. Scrieți, în pseudocod, algoritmul de rezolvare a problemei enunțate. Exemplu: dacă n=80 și p=2, se scrie numărul 4 (80=245). (10p.) 2. O valoare k polarizează un șir dacă există doi termeni ai șirului care au acea valoare, unul fiind în prima jumătate a șirului, iar celălalt în a doua jumătate a șirului. Scrieți un program Pascal care citește de la tastatură numere naturale din intervalul [1,20]: n și un șir de 2∙n numere, elemente ale unui tablou unidimensional, cu proprietatea că atât primele n, cât și ultimele n sunt distincte. Programul afișează pe ecran valorile care pot polariza șirul citit. Valorile sunt afișate într-o ordine oarecare, separate prin câte un spațiu, iar dacă nu există astfel de valori se afișează pe ecran mesajul nepolarizat. Exemplu: pentru n=4 și tabloul (3,2,6,5,5,1,6,8) se afișează pe ecran, nu neapărat în această ordine, numerele 5 6 (10p.) 3. Fișierul bac.txt conține un șir de cel mult 106 numere întregi din intervalul [-103,103], separate prin câte un spațiu. Se cere să se afișeze pe ecran suma minimă obținută adunând numere negative de pe poziții consecutive în șirul aflat în fișier. Proiectați un algoritm eficient din punctul de vedere al memoriei utilizate și al timpului de executare. Exemplu: dacă fișierul bac.txt conține valorile -4 6 -7 -2 -1 -4 10 3 -9 -2 2 se afișează pe ecran numărul -14 a. Scrieți programul Pascal corespunzător algoritmului proiectat. (8p.) b. Descrieți în limbaj natural algoritmul proiectat, justificând eficiența acestuia. (2p.)
Baremul
Deschide PDF-ul originalBaremul · pagina 1
Ministerul Educației și Cercetării Centrul Național de Evaluare și Examinare Probă scrisă la informatică Testul 7 Filieră teoretică, profil real, specializare științe ale naturii Barem de evaluare și de notare Pagina 1 din 2 Examenul de bacalaureat național 2020 Proba E. d) Informatică BAREM DE EVALUARE ȘI DE NOTARE (comun pentru limbajele C/C++ și Pascal) Testul 7 Filieră teoretică, profil real, specializare științe ale naturii • Se punctează oricare alte modalități de rezolvare corectă a cerințelor. • Nu se acordă punctaje intermediare, altele decât cele precizate explicit prin barem. Nu se acordă fracțiuni de punct. Se acordă 10 puncte din oficiu. Nota finală se calculează prin împărțirea punctajului total acordat pentru lucrare la 10. • Utilizarea unui tip de date care depășește domeniul de valori precizat în enunț este acceptată dacă acest lucru nu afectează corectitudinea în funcționarea programului. SUBIECTUL I (20 de puncte) 1d 2a 3c 4b 5c 5x4p. SUBIECTUL al II - lea (40 de puncte) 1. a) Răspuns corect: 7533 6p. b) Răspuns corect: 20 88 6p. Se acordă câte 3p. pentru fiecare dintre cele două numere conform cerinței. c) Pentru program corect -declarare variabile -citire date -afișare date -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 -echivalență a prelucrării realizate, conform cerinței (*) -corectitudine globală a algoritmului1) 6p. 5p. 1p. (*) Se acordă numai 2p. dacă algoritmul are o structură repetitivă conform cerinței, principial corectă, dar nu este echivalent cu cel dat. Se va puncta orice formă corectă de structură repetitivă conform cerinței. 2. Pentru rezolvare corectă -declarare a variabilelor conform cerinței -afișare a datelor conform cerinței (*) -corectitudine globală a secvenței1) 6p. 2p. 3p. 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (preț mai mic, calcul medie, valori suport afișate) conform cerinței. 3. Răspuns corect: ou rosu 6p. Se acordă câte 1p. pentru fiecare literă afișată conform cerinței. SUBIECTUL al III - lea (30 de puncte) 1. Pentru algoritm corect -citire a datelor -determinare a valorii cerute (*) -scriere a datelor și tratarea cazului -1 -scriere principial corectă a structurilor de control, corectitudine globală a algoritmului1) (**) 10p. 1p. 6p. 1p. 2p. (*) Se acordă câte 2p. pentru fiecare aspect specific (identificare a unui divizor, identificare a unui număr prim, algoritm principial corect de determinare a unei puteri) conform cerinței. (**) Se va puncta orice formă corectă de structură repetitivă sau decizională. 2. Pentru program corect -declarare a unei variabile care să memoreze un tablou unidimensional -citire a datelor -determinare a datelor cerute (*) -afișare a datelor și tratare a cazului nepolarizat -declarare a variabilelor simple, corectitudine globală a programului1) 10p. 1p. 1p. 6p. 1p. 1p. (*) Se acordă câte 2p. pentru fiecare aspect specific (identificare a unui element situat în prima/a doua jumătate, algoritm principial corect de identificare a unui element comun celor două jumătăți, elemente suport) conform cerinței.
Baremul · pagina 2
Ministerul Educației și Cercetării Centrul Național de Evaluare și Examinare Probă scrisă la informatică Testul 7 Filieră teoretică, profil real, specializare științe ale naturii Barem de evaluare și de notare Pagina 2 din 2 3. a) Pentru program corect -operații cu fișiere: declarare, pregătire în vederea citirii, citire din fișier -determinare a valorilor cerute (*),(**) -utilizare a unui algoritm eficient (***) -declarare a variabilelor, citire a datelor, corectitudine globală a programului1) 8p. 1p. 5p. 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. O soluție posibilă parcurge șirul din fișier, memorând valoarea curentă (crt), suma secvenței curente, s, și suma minimă; fiecare valoare negativă se adaugă la sumă și se inițializează suma cu 0 la fiecare număr pozitiv întâlnit. Suma minimă se actualizează, după caz, la fiecare pas. b) Pentru răspuns corect -coerență a descrierii algoritmului (*) -justificare a elementelor de eficiență 2p. 1p. 1p. 1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.