Textul subiectului și baremului
Model oficial BAC Informatică Mate-Info Pascal 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Ă Model
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 2022
Proba E. d)
INFORMATICĂ
Limbajul Pascal
Model
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. Indicați o expresie care are valoarea true dacă
și numai dacă expresia Pascal alăturată are valoarea true.
(x<=20) or (x>22)
a. not(x>20) or not(x<=22) b. not(x>=20) and not(x>=22)
c. not((x<20) or (x<=22)) d. not((x<20) and (x<22))
2. Subprogramul f este definit alăturat,
iar variabila întreagă r are valoarea 0
înainte de apel. Indicați apelul în urma
căruia variabila r are valoarea 2.
procedure f(x,y:integer; var z:integer);
begin if (x mod 2)*(y mod 2)<>0 then z:=1
else begin f(x div 2,y div 2,z); z:=z+1 end
end;
a. f(21,22,r); b. f(20,21,r); c. f(19,20,r); d. f(18,19,r);
3. Utilizând metoda backtracking, se generează toate posibilitățile de a forma cutii cu dulciuri de tipuri
distincte din mulțimea {bomboane, drajeuri, jeleuri, praline}. Într-o cutie sunt cel puțin două tipuri
de dulciuri, dar nu pot fi și jeleuri și praline simultan. Două cutii sunt distincte dacă ele conțin cel puțin un
tip diferit de dulciuri. Primele patru soluţii generate sunt, în această ordine, (bomboane, drajeuri),
(bomboane, drajeuri, jeleuri), (bomboane, drajeuri, praline), (bomboane, jeleuri). Indicați
a șasea soluție, în ordinea generării acestora.
a. (bomboane, praline) b. (drajeuri, jeleuri)
c. (drajeuri, praline) d. (jeleuri, praline)
4. Indicați numărul de noduri ale unui graf neorientat fără cicluri, cu 22 de muchii și două componente conexe.
a. 11 b. 23 c. 24 d. 44
5. Variabila a memorează un tablou bidimensional cu cu n linii și n coloane, numerotate începând de la 1.
Știind că elementul a[2021,2022] se află pe diagonala secundară a tabloului, indicați valoarea lui n.
a. 4046 b. 4044 c. 4042 d. 4040
SUBIECTUL al II-lea (40 de puncte)
1. Algoritmul alăturat este reprezentat în pseudocod. citește x,y (numere naturale, x<y)
u0; nr0
┌pentru kx,y execută
│ s0; nrnr+1
│┌pentru t1,[√k] execută
││ ss+t*t
│└■
│┌dacă s≠u atunci
││ scrie s,’*’,nr,’ ’
││ us; nr0
│└■
└■
a. Scrieţi ce se afișează în urma executării algoritmului dacă se
citesc, în această ordine, numerele 2 și 7. (6p.)
b. Dacă pentru y se citeşte numărul 22, scrieţi două numere care pot
fi citite pentru x, astfel încât, în urma executării algoritmului, pentru
fiecare dintre acestea, să se afișeze doar 30*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 una dintre structurile pentru...execută cu o
structură de tip cât timp...execută. (6p.)Subiectul · pagina 2
Ministerul Educaţiei Centrul Naţional de Politici şi Evaluare în Educaţie Probă scrisă la INFORMATICĂ Model 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. Un arbore cu 9 noduri, numerotate de la 1 la 9, este reprezentat prin vectorul de „taţi” (3, 5, 2, 2, 0, 5, 3, 3, 8). Scrieți numerele asociate nodurilor care sunt descendenți direcți („fii”) ai nodului cu eticheta 3. (6p.) 3. Variabila z memorează date referitoare la un zbor al unui avion, derulat în totalitate în aceeași zi, pe teritoriul României: codul zborului, momentul de timp corespunzător aterizării (ora și minutul) și durata zborului, exprimată în minute. Toate valorile precizate sunt numere naturale: codul are maximum trei cifre, ora este un număr din intervalul [0,23], iar minutul este un număr din intervalul [0,59]. Știind că expresiile Pascal de mai jos au ca valori codul zborului, respectiv ora la care a decolat avionul, scrieți definiția unui tip de date cu numele zbor, înregistrare care să permită memorarea datelor referitoare la un zbor de tipul precizat, și declarați corespunzător variabila z. z.cod (60*z.aterizare.ora+z.aterizare.minut-z.durata) div 60 (6p.) SUBIECTUL al III-lea (30 de puncte) 1. Pentru grădina publică a orașului se dorește proiectarea unui mozaic de formă dreptunghiulară, format din plăcuțe dreptunghiulare de ceramică. Furnizorul dispune de trei tipuri de plăcuțe și de suficient de multe plăcuțe din fiecare tip, astfel încât să fie posibilă realizarea oricărui model. Modelul proiectat este constituit din trei benzi suprapuse, fiecare bandă fiind formată din plăcuțe întregi, de același tip, montate unele după altele; oricare două benzi diferite sunt formate din plăcuțe de tipuri diferite. Subprogramul mozaic are trei parametri, x, y și z, prin care primește trei numere naturale din intervalul [10,200], reprezentând lungimea, exprimată în milimetri, a unei plăcuțe de primul tip, de al doilea tip, respectiv de al treilea tip. Subprogramul returnează un număr natural, reprezentând lungimea minimă, exprimată în milimetri, a unui mozaic care să respecte modelul proiectat. Scrieți definiția completă a subprogramului. Exemplu: pentru x=30, y=40, z=20, subprogramul returnează valoarea 120 (mozaicul are trei benzi, fiecare de lungime 120 mm: prima formată din 4 plăcuțe de câte 30 mm, a doua formată din 3 plăcuțe de câte 40 mm, iar a treia formată din 6 plăcuțe de câte 20 mm). (10p.) 2. Un text are cel mult 100 de caractere și este format din cuvinte, numere naturale şi spaţii. Textul conține cel puțin un număr, iar cuvintele sunt formate numai din litere mici ale alfabetului englez. Cuvintele şi numerele sunt separate prin câte un spaţiu, ca în exemplu. Scrieţi un program Pascal care citeşte de la tastatură un text de tipul precizat şi afişează pe ecran un număr natural k, dacă toate numerele care intră în componența sa au câte k cifre, sau mesajul NU, în caz contrar. Exemplu: pentru textul la zoo sunt 100 de cocori si 120 de pasari flamingo sau pentru textul la zoo sunt 100 de cocori se afişează 3 iar pentru textul la zoo sunt 100 de cocori si 10 pasari flamingo se afişează NU (10p.) 3. Numim secvență par-încadrată a unui șir de numere naturale un subșir al acestuia, format din termeni aflați pe poziții consecutive în șirul dat, subșir care începe și se termină cu aceeași valoare, pară. Lungimea secvenței este egală cu numărul de termeni ai acesteia. Fișierul bac.txt conține un șir de cel puțin două și cel mult 106 numere naturale din intervalul [0, 9]. Numerele sunt separate prin câte un spațiu, iar în șir există cel puțin doi termeni pari egali. Se cere să se determine secvențele par-încadrate din acest șir care au lungime maximă și să se afișeze pe prima linie a ecranului lungimea maximă determinată, iar pe următoarea linie, pentru fiecare astfel de secvenţă, valoarea primului său termen. Numerele de pe a doua linie sunt afişate în ordine strict crescătoare, separate prin câte un spaţiu. Proiectați un algoritm eficient din punctul de vedere al timpului de executare. Exemplu: dacă fişierul bac.txt conţine numerele 5 1 3 2 4 3 3 2 8 9 7 3 4 6 6 0 8 atunci pe ecran se afișează valorile: 9 4 8 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Ă Model
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 2022
Proba E. d)
INFORMATICĂ
BAREM DE EVALUARE ȘI DE NOTARE
(comun pentru limbajele C/C++ şi Pascal)
Model
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ț (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)
1a 2d 3b 4c 5c 5x4p.
SUBIECTUL al II - lea (40 de puncte)
1. a) Răspuns corect: 1*1 5*2 6p. Se acordă câte 1p. pentru fiecare element (valori
numerice, simboluri *) 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 mulțimea
{16,17,18,19,20,21}).
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 de tipul
cerut (*)
-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
(inițializare contor, expresie logică pentru test inițial,
actualizare contor) conform cerinței.
2. Răspuns corect
1,7,8
6p. Se acordă câte 2p. pentru fiecare dintre cele trei
numere conform cerinței.
3. 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 specific
(definire principial corectă a unei structuri/înregistrări,
câmpuri de tip simplu, câmp de tip structurat,
etichetă/nume) conform cerinței.
Se punctează câmpul de tip structurat, conform
cerinței, atât dacă structura/înregistrarea
corespunzătoare este definită separat cât și dacă este
definită în cadrul structurii/înregistrării cerute.Baremul · pagina 2
Ministerul Educaţiei
Centrul Naţional de Politici şi Evaluare în Educaţie
Probă scrisă la INFORMATICĂ Model
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
SUBIECTUL al III - lea (30 de puncte)
1. Pentru subprogram corect
-antet subprogram (*)
-determinare a valorii 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
(identificare a unui multiplu/divizor al unui număr,
identificare a unui multiplu comun a două numere,
identificare a celui mai mic multiplu comun) conform
cerinței.
2. Pentru program corect
-declarare a unei variabile care să
memoreze un șir de caractere
-citire a datelor
-determinare a valorii cerute (*)
-tratare a cazului NU și afișare fie a
numărului 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 unei serii de cuvinte, identificare a unei
litere/cifre, identificare a unui număr, identificare a
numărului de caractere ale unui subșir, algoritm de
bază pentru verificarea unei proprietăți, cuvinte/numere
suport verificate) 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.
O soluţie posibilă utilizează doi vectori de apariții, p și
u, în care pentru fiecare valoare pară i citită din fișier se
actualizează pi, prima poziție pe care este întâlnită
valoarea i, respectiv ui, ultima poziție pe care este
întâlnită valoarea i. Lungimea cerută este cea mai mare
valoare a expresiei ui–pi+1 pentru orice i{0,2,4,6,8},
iar numerele cerute corespund valorilor pare i pentru
care se obține lungimea maximă menționată.
b) 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, afișare a datelor,
corectitudine globală a programului1)
8p.
1p.
5p.
1p.
1p.
1) Corectitudinea globală vizează structura, sintaxa, alte aspecte neprecizate în barem.