Textul subiectului și baremului
Test de antrenament BAC Informatică Științe ale Naturii Pascal 2021 – testul 11
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Ă Testul 11 Limbajul Pascal Filieră teoretică, profil real, specializare matematică-informatică / matematică-informatică intensiv informatică Filieră vocațională, profil militar, specializare matematică-informatică Pagina 1 din 2 Examenul național de bacalaureat 2021 Proba E. d) INFORMATICĂ Limbajul Pascal Testul 11 Filieră teoretică, profil real, specializare matematică-informatică / matematică-informatică intensiv informatică Filieră vocațională, profil militar, specializare matematică-informatică • 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ă. • În grafurile din cerințe oricare muchie are extremități distincte și oricare două muchii diferă prin cel puțin una dintre extremități. 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 nenul. Indicați expresia Pascal cu valoarea true dacă 2021 este divizor al lui x. a. x div (x div 2021)=0 b. x div (x mod 2021)=0 c. x mod (x div 2021)=0 d. x mod (x mod 2021)=0 2. Indicați o expresie Pascal care are valoarea true. a. round(5.19)=round(5.91) b. round(5.19)=trunc(5.91) c. round(5)-1=trunc(5) d. round(5.19)+1=trunc(5.19) 3. Pentru a verifica dacă în tabloul unidimensional (91,83,22,19,12,8,3) există elementul cu valoarea x se aplică metoda căutării binare. Știind că valoarea x a fost comparată cu un singur element al tabloului pe parcursul aplicării metodei, x ar putea fi: a. 19 b. 91 c. 8 sau 3 d. 83 sau 8 4. Tablourile unidimensionale X și Y au elementele: X=(4,6,9,20,21), iar Y=(5,12,13,24,52). În urma interclasării lor în ordine crescătoare se obține tabloul cu elementele: a. (6,15,19,41,70) b. (4,5,6,12,9,13,20,24,21,52) c. (4,6,9,20,21,5,12,13,24,52) d. (4,5,6,9,12,13,20,21,24,52) 5. Variabila e memorează un număr natural din intervalul [104,105). Indicați o instrucțiune în urma executării căreia se elimină cifra din mijloc a acestui număr. a. e:=e div 100*100+e mod 100; b. e:=e div 1000+e mod 100; c. e:=e div 1000*100+e mod 100; d. e:=e mod 1000*100+e div 100; 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→b operația de interschimbare a valorilor variabilelor a și b. citește m,n (numere naturale) ┌dacă m>n atunci │ n→m └■ ┌dacă m%2=0 atunci │ mm+1 └■ ┌cât timp m≤n execută │ mm+2 │ scrie ‘*’ └■ a. Scrieți succesiunea de caractere afișate în urma executării algoritmului dacă se citesc, în această ordine, numerele 2 și 9. (6p.) b. Dacă pentru n se citește numărul 79, scrieți două numere nenule care pot fi citite pentru m astfel încât, în urma executării algoritmului, pentru fiecare dintre acestea, să se afișeze de 40 de ori caracterul *. (6p.) c. Scrieți programul Pascal corespunzător algoritmului dat, fără a utiliza eventuale funcții predefinite pentru operația de interschimbare. (10p.) d. Scrieți în pseudocod un algoritm echivalent cu cel dat, înlocuind structura 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Ă Testul 11 Limbajul Pascal Filieră teoretică, profil real, specializare matematică-informatică / matematică-informatică intensiv informatică Filieră vocațională, profil militar, specializare matematică-informatică Pagina 2 din 2 2. Variabilele serie și an memorează date pentru o mașină: seria (o literă mare a alfabetului englez) și anul fabricației acesteia (un număr natural din intervalul [2010,2021]). Declarați variabila serie și scrieți o secvență de instrucțiuni Pascal în urma executării căreia să se afișeze pe ecran mesajul Masina noua dacă anul fabricației acesteia este peste 2015, mesajul Mediu, dacă anul fabricației acesteia este 2015, sau mesajul Masina veche în caz contrar. (6p.) 3. Variabila c este de tip char, iar variabilele i și k sunt de tip întreg; de la tastatură se citesc 7 cifre sau litere ale alfabetului englez. Scrieți secvența alăturată înlocuind punctele de suspensie astfel încât, în urma executării secvenței obținute, valoarea variabilei k să fie egală cu numărul de cifre citite. Exemplu: dacă se citesc literele și cifrele b, a, c, 2, 0, 2, 1 variabila k are valoarea 4. (6p.) k:=..........; for i:=1 to 7 do begin read(c); ............. end; SUBIECTUL al III-lea (30 de puncte) 1. Două numere se numesc oglindite dacă fiecare se obține din celălalt, prin parcurgerea cifrelor acestuia de la dreapta la stânga. Două numere se numesc impar-oglindite dacă numerele obținute din acestea, prin îndepărtarea tuturor cifrelor lor pare, sunt oglindite. Se citesc două numere naturale, x și y, și se cere să se scrie valoarea 1 dacă x și y sunt impar-oglindite sau valoarea 0 în caz contrar. Scrieți, în pseudocod, algoritmul de rezolvare a problemei enunțate. Exemplu: dacă x=523 și y=84356, se scrie 1, iar dacă x=523 și y=84536 sau x=523 și y=84576 sau x=40 și y=86, se scrie 0. (10p.) 2. Scrieți un program Pascal care citește de la tastatură numere naturale: n (n[2,20]), k (k[1,n]) și 2∙n numere din intervalul [0,109], elemente ale unui tablou unidimensional. Programul transformă tabloul în memorie, interschimbând șirul primelor k elemente cu șirul ultimelor k elemente, ambele șiruri fiind parcurse de la stânga la dreapta, ca în exemplu. Elementele tabloului obținut sunt afișate pe ecran, separate prin câte un spațiu. Exemplu: pentru n=5, k=3 și tabloul (6,1,3,6,9,4,8,5,8,0) se obține tabloul (5,8,0,6,9,4,8,6,1,3). (10p.) 3. Se consideră șirul 1, 3, 5, 7 ... definit astfel: f0=1, iar fn=fn-1+2 dacă n≥1 (unde n este un număr natural). Se citește de la tastatură un număr natural, x (x[1,109]), reprezentând un termen în șirul dat, și se cere să se scrie în fișierul text bac.out, separați prin câte un spațiu, toți termenii șirului mai mici sau egali cu x, în ordine inversă a apariției lor în șir. Proiectați un algoritm eficient din punctul de vedere al spațiului de memorie și al timpului de executare. Exemplu: dacă x=7, fişierul conţine valorile 7 5 3 1 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Ă Testul 11 Filieră teoretică, profil real, specializare matematică-informatică / matematică-informatică intensiv informatică Filieră vocațională, profil militar, specializare matematică-informatică Barem de evaluare și de notare Pagina 1 din 2 Examenul național de bacalaureat 2021 Proba E. d) INFORMATICĂ BAREM DE EVALUARE ȘI DE NOTARE (comun pentru limbajele C/C++ și Pascal) Testul 11 Filieră teoretică, profil real, specializare matematică-informatică / matematică-informatică intensiv informatică Filieră vocațională, profil militar, specializare matematică-informatică • 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ț este acceptată dacă acest lucru nu afectează corectitudinea în funcționarea programului. SUBIECTUL I (20 de puncte) 1c 2b 3a 4d 5c 5x4p. SUBIECTUL al II - lea (40 de puncte) 1. a) Răspuns corect: **** 6p. Se acordă numai 3p. dacă s-au scris 5 sau doar 3 simboluri *. b) Pentru răspuns corect 6p. Se acordă câte 3p. pentru fiecare dintre cele două numere conform cerinței (oricare două dintre numerele 1, 157, 158). c) Pentru program corect -declarare variabile -citire date -afișare date -instrucțiuni de decizie (*) -instrucțiune repetitivă -atribuiri precizate în algoritmul dat -implementare a operației de interschimbare -corectitudine globală a programului1) 10p. 1p. 1p. 1p. 2p. 2p. 1p. 1p. 1p. (*) Se acordă numai 1p. dacă doar una dintre instrucțiunile de decizie 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 variabilei conform cerinței -afișare a mesajelor conform cerinței (*) -corectitudine globală a secvenței1) 6p. 1p. 4p. 1p. (*) Se acordă câte 2p. pentru fiecare aspect specific (mesaje, corespondență date-mesaje) conform cerinței. 3. Pentru răspuns corect -instrucțiune de inițializare a variabilei -determinare a numărului cerut (*) -corectitudine globală a secvenței1) 6p. 1p. 4p. 1p. (*) Se acordă câte 2p. pentru fiecare aspect (algoritm de numărare principial corect, caractere suport numărate) 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, corectitudine globală a algoritmului1) (**) 10p. 1p. 6p. 1p. 2p. (*) Se acordă câte 1p. pentru fiecare aspect (identificare a unei cifre pare/impare, succesiune de cifre obținute în ordinea parcurgerii stânga-dreapta, succesiune de cifre obținute în ordinea parcurgerii dreapta-stânga, identificare a unei cifre comune/distincte, cifre suport/numere formate din cifrele suport verificate, tratare a cazului în care nu există cifre impare în niciun număr) 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Ă Testul 11 Filieră teoretică, profil real, specializare matematică-informatică / matematică-informatică intensiv informatică Filieră vocațională, profil militar, specializare matematică-informatică 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 datelor -transformare a tabloului conform cerinței (*) -afișare a datelor -declarare a variabilelor simple, corectitudine globală a programului1) 10p. 1p. 1p. 6p. 1p. 1p. (*) Se acordă câte 1p. pentru fiecare aspect specific (identificare a unui element situat pe primele k poziții, identificare a unui element situat pe ultimele k poziții, plasare a unor elemente de pe primele k poziții sursă pe pozițiile destinație din a doua jumătate, plasare a unor elemente de pe ultimele k poziții sursă pe pozițiile destinație din prima jumătate, valori suport deplasate/nemodificate, transformare în memorie) 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. O soluție posibilă determină valoarea termenului curent crt, pe baza expresiei crt=x/2; se generează termenii șirului mai mici decât x calculați, unde x și crt se actualizează corespunzător, la fiecare pas. O altă soluție posibilă deduce formula termenului general ca fiind fn=2n+1 și determină valoarea lui n=(x-1)/2 corespunzătoare termenului fn=x; se generează termenii fn ai șirului pe baza formulei deduse, unde n se actualizează corespunzător, la fiecare pas. 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.