Înapoi la fișa subiectului

Textul subiectului și baremului

Test de antrenament BAC Informatică Mate-Info Pascal 2021 – 12 martie 2021, testul 2

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 original

Subiectul · pagina 1

Ministerul Educaţiei
Centrul Național de Politici și Evaluare în Educație
Probă scrisă la INFORMATICĂ Testul 2
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 2
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. Variabilele x și y sunt de tip întreg și memorează numere naturale nenule. Indicați o expresie Pascal
care are valoarea true dacă și numai dacă numărul memorat în x are cifra zecilor egală cu 2 și este un
multiplu al numărului memorat în y.
a. (x div 10 mod 10=2) and (x mod y=0) b. (x div 10 mod 10=2) or (y mod x=0)
c. (x div 2 mod 10=10) and (x mod y=0) d. (x div 2 mod 10=10) or (y mod x=0)
2. Subprogramul f este definit alăturat. Indicați
ce se afișează în urma apelului de mai jos.
f(4);
procedure f(x:longint);
begin while x>1 do
begin x:=x-1; f(x-1) end;
write(x)
end;
a. 11111 b. 00000 c. 01010 d. 01101
3. Utilizând metoda backtracking se generează toate posibilitățile de a forma selecții de câte 4 piese ale
soliștilor/formațiilor din mulțimea {„Bono”, „Bruce Springsteen”, „Bon Jovi”,
„Leonard Cohen”, „Portugal.The Man”}, astfel încât pe oricare două poziții alăturate să nu se afle
două piese ale soliștilor/formațiilor din submulțimea {„Bono”, „Bon Jovi”, „Portugal.The Man”}.
Primele cinci selecții generate sunt, în această ordine, („Bono”, „Bruce Springsteen”, „Bono”,
„Bruce Springsteen”), („Bono”, „Bruce Springsteen”, „Bono”, „Leonard Cohen”),
(„Bono”, „Bruce Springsteen”, „Bruce Springsteen”, „Bono”), („Bono”,
„Bruce Springsteen”, „Bruce Springsteen”, „Bruce Springsteen”), („Bono”,
„Bruce Springsteen”, „Bruce Springsteen”, „Bon Jovi”). Ultima selecție generată este:
a. („Portugal.The Man”, „Leonard Cohen”, „Portugal.The Man”, „Portugal.The Man”)
b. („Portugal.The Man”, „Leonard Cohen”, „Portugal.The Man”, „Bruce Springsteen”)
c. („Portugal.The Man”, „Leonard Cohen”, „Portugal.The Man”, „Leonard Cohen”)
d. („Portugal.The Man”, „Leonard Cohen”, „Leonard Cohen”, „Portugal.The Man”)
4. Un arbore cu 10 noduri, numerotate de la 1 la 10, este reprezentat prin vectorul de „tați”
(0,1,1,1,2,3,3,7,4,6). Indicați numărul de frunze ale arborelui.
a. 3 b. 4 c. 5 d. 6
5. Un graf neorientat are 10 noduri, numerotate de la 1 la 10, și muchiile [1,4], [1,10], [2,3], [2,6],
[2,9], [3,6], [4,10], [5,7], [5,8], [5,10], [7,8]. Indicați numărul minim de muchii care trebuie
adăugate pentru ca graful obținut să aibă cel puțin un ciclu care să traverseze toate muchiile sale.
a. 1 b. 2 c. 3 d. 4

Subiectul · pagina 2

Ministerul Educaţiei
Centrul Național de Politici și Evaluare în Educație
Probă scrisă la INFORMATICĂ Testul 2
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
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, n>9)
s1
c1n%10; n[n/10]; c2n%10
┌dacă c1=c2 atunci s0
│altfel
│┌dacă c1<c2 atunci s-1
│└■
└■
┌cât timp (c1-c2)*s>0 și n>9 execută
│ c1n%10; n[n/10]; c2n%10
└■
scrie s,' ',n
a. Scrieți ce se afișează dacă se citește valoarea
2186310. (6p.)
b. Scrieți două numere din intervalul [104,105) care
pot fi citite astfel încât, în urma executării
algoritmului pentru fiecare dintre acestea să se
afișeze două valori egale. (6p.)
c. Scrieți programul Pascal corespunzător algoritmului dat. (10p.)
d. Scrieți în pseudocod un algoritm, echivalent cu cel dat, înlocuind adecvat structura
cât timp...execută cu o structură repetitivă de alt tip. (6p.)
2. Variabila p memorează simultan gradul unui polinom (număr natural din intervalul [0,102)) și toți
coeficienții acestuia (numere reale). Știind că expresiile Pascal de mai jos au ca valori gradul unui
polinom, respectiv termenul liber al acestuia, scrieți definiția unui tip de date cu numele polinom,
înregistrare care permite memorarea datelor despre un polinom, și declarați corespunzător variabila p.
p.grad p.coeficient[0] (6p.)
3. Variabila s memorează un șir de cel mult 20 de caractere (litere mari și mici ale alfabetului englez).
Declarați eventuale alte variabile necesare și scrieți o secvență de instrucțiuni în urma executării căreia
se afișează pe ecran vocalele care NU apar în șirul menționat.
Se consideră vocale literele a, e, i, o, u, A, E, I, O, U.
Exemplu: dacă se citește textul PREafrUMoASA se afișează pe ecran, nu neapărat în această ordine,
vocalele: euOiI (6p.)
SUBIECTUL al III-lea (30 de puncte)
1. Subprogramul factori are doi parametri, n și m, prin care primește câte un număr natural din intervalul
[1,109]. Subprogramul returnează numărul valorilor prime care apar la aceeași putere atât în
descompunerea în factori primi a lui n, cât și în descompunerea în factori primi a lui m.
Scrieți definiția completă a subprogramului.
Exemplu: dacă n=16500 și m=10780, atunci subprogramul returnează 2 (16500=2235311,
10780=2257211). (10p.)
2. Scrieți un program Pascal care citește de la tastatură un număr natural, n (n∈[2,20]), și construiește
în memorie un tablou bidimensional cu n linii și n coloane, astfel încât fiecare linie a sa are proprietățile:
• elementul situat pe diagonala secundară este egal cu n;
• începând de la diagonala secundară, spre stânga, elementele formează un șir strict descrescător de
numere consecutive, iar începând de la diagonala secundară, spre dreapta, elementele formează tot
un șir strict descrescător de numere consecutive.
Programul afișează pe ecran tabloul construit, fiecare linie a tabloului pe câte o linie a
ecranului, cu elementele aflate pe aceeași linie separate prin câte un spațiu.
Exemplu: dacă n=5 se afișează pe ecran tabloul alăturat. (10p.)
1 2 3 4 5
2 3 4 5 4
3 4 5 4 3
4 5 4 3 2
5 4 3 2 1
3. Fișierul bac.in conține un șir de cel mult 106 numere întregi din intervalul [-109,109], separate prin
câte un spațiu. Cel puțin un număr din șir este pozitiv.
Se cere să se afișeze pe ecran lungimea maximă a unei secvențe a șirului care fie începe, fie se încheie
cu un număr pozitiv. O secvență este formată din termeni aflați pe poziții consecutive în șir, iar lungimea
secvenței este egală cu numărul de termeni ai acesteia. Proiectați un algoritm eficient din punctul de
vedere al memoriei utilizate și al timpului de executare.
Exemplu: dacă fișierul conține numerele -15 -7 4 -7 21 -5 -200 -26 52 -24 -7 -9 -20
pe ecran se afișează 11 (corespunzător secvenței 4 -7 21 -5 -200 -26 52 -24 -7 -9 -20).
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 original

Baremul · pagina 1

Ministerul Educaţiei
Centrul Național de Politici și Evaluare în Educație
Probă scrisă la INFORMATICĂ Testul 2
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 2
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)
1a 2d 3c 4b 5b 5x4p.
SUBIECTUL al II - lea (40 de puncte)
1. a) Răspuns corect: -1 21 6p. Se acordă câte 3p. pentru fiecare dintre cele două
valori conform cerinței.
b) Pentru răspuns corect 6p. Se acordă câte 3p. pentru fiecare dintre cele două
numere conform cerinței (orice număr din intervalul
cerut care are prima cifră 1, iar celelalte cifre în ordine
strict crescătoare).
c) Pentru program corect
-declarare a variabilelor
-citire a datelor
-afișare a datelor
-instrucțiuni de decizie (*)
-instrucțiune repetitivă
-atribuiri
-corectitudine globală a programului1)
10p.
1p.
1p.
1p.
3p.
2p.
1p.
1p.
(*) Se acordă numai 2p. 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ă
-definire a structurii/înregistrării (*)
-declarare a variabilei conform cerinței
-corectitudine globală a secvenței1)
6p.
4p.
1p.
1p.
(*) Se acordă câte 1p. pentru fiecare aspect (definire
principial corectă a unei structuri/înregistrări, câmp de
tip simplu de date, câmp de tip structurat de date,
etichetă/nume) conform cerinței.
3. Pentru rezolvare corectă
-determinare a valorilor cerute (*)
-afișare a unor caractere pe ecran
-declarare a eventualelor alte variabile
utilizate, corectitudine globală a
secvenței1)
6p.
4p.
1p.
1p.
(*) Se acordă câte 1p. pentru fiecare aspect specific
(identificare a unei vocale/consoane, identificare a unei
vocale care lipsește din șir, vocale litere mici/mari, vocale
suport în șir) conform cerinței.
SUBIECTUL al III - lea (30 de puncte)
1. Pentru subprogram corect
-antet subprogram (*)
-determinare a valorilor cerute (**)
-instrucțiune/instrucțiuni de returnare a
rezultatului
-declarare a tuturor variabilelor locale,
corectitudine globală a subprogramului1)
10p.
2p.
6p.
1p.
1p.
(*) Se acordă câte 1p. pentru fiecare aspect al
antetului (structură, parametri de intrare) conform
cerinței.
(**) Se acordă câte 2p. pentru fiecare aspect al
cerinței (divizori primi comuni, putere a divizorilor
comună, algoritm principial corect de numărare).

Baremul · pagina 2

Ministerul Educaţiei
Centrul Național de Politici și Evaluare în Educație
Probă scrisă la INFORMATICĂ Testul 2
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 bidimensional
-citire a datelor
-construire 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 diagonala
secundară, atribuire valori pe diagonala secundară,
construire a unui șir descrescător de la diagonală spre
dreapta, construire a unui șir descrescător de la
diagonală spre stânga, valori suport consecutive,
construire î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ă parcurge șirul din fișier, numără
valorile citite în variabila nr și memorează poziția
primului număr pozitiv, p1, precum și poziția ultimului
număr pozitiv, p2. Valoarea cerută este cea mai mare
dintre valorile nr-p1+1 și p2.
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.