Înapoi la fișa subiectului

Textul subiectului și baremului

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

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 1
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 1
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 arc/muchie are extremități distincte și oricare două arce/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. Indicați o expresie Pascal echivalentă cu cea alăturată. (x>5) and (x<20) or (x<>y)
a. ((x>5) or (x<20)) and (x=y) b. not((x<=5) or (x>=20)) or (x<>y)
c. ((x>5) or (x<20)) and (x<>y) d. not((x<5) or (x>20)) and (x<>y)
2. Subprogramul f este definit alăturat.
Indicați valoarea f(4770777,7).
function f (n,k:longint):longint;
begin if n<>0 then
if n mod 10=k then f:=1+f(n div 10,k)
else f:=0
else f:=0
end;
a. 2 b. 3 c. 4 d. 5
3. Variabila x este declarată alăturat. Indicați secvența care, în
urma executării, memorează în variabila x ziua, luna și anul
corespunzătoare unei date calendaristice citite de la tastatură.
type data=record
zi,luna,an:integer
end;
var x:data;
a. read(x.zi,x.luna,x.an); b. read(zi.x,luna.x,an.x);
c. read(x(zi,luna,an)); d. read(x(zi),x(luna),x(an));
4. Un arbore cu rădăcină are 8 noduri, numerotate de la 1 la 8, și muchiile [1,3], [1,7], [1,8], [2,4],
[3,5], [3,6], [4,5]. Știind că rădăcina arborelui este nodul numerotat cu 6, indicați nodurile de tip
frunză ale arborelui dat.
a. 6,8 b. 2,6 c. 4,7,8 d. 2,7,8
5. Un graf neorientat are 6 noduri și fiecare dintre acestea are gradul egal cu 1. Indicați numărul de
componente conexe ale grafului.
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 1
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)
m10
┌dacă n=0 atunci
│ m0
│altfel
│┌repetă
││ cn%10; n[n/10]
││┌dacă c<=m atunci mc
│││altfel m-1
││└■
│└până când n=0
└■
scrie m
a. Scrieți numărul afișat în urma executării algoritmului dacă pentru n
se citește valoarea 205579. (6p.)
b. Scrieți trei numere din intervalul [103,104) care pot fi citite astfel
încât, pentru fiecare dintre acestea, în urma executării algoritmului,
să se afișeze 7. (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 repetă...până când cu o structură repetitivă
de alt tip. (6p.)
2. Utilizând metoda backtracking, sunt generate toate numerele din intervalul [100,999], cu proprietatea
că au cifrele în ordine crescătoare, cifrele aflate pe poziții consecutive sunt de paritate diferită, iar suma
lor este egală cu 14. Scrieți toate numerele generate, în ordinea obținerii lor. (6p.)
3. Variabilele s1 și s2 pot memora câte un șir de
cel mult 50 de caractere. Scrieți ce se afișează
în urma executării secvenței alăturate.
(6p.)
s1:='bac2021';
writeln(length(s1));
s2:=copy(s1,4,4); insert('20-',s2,3);
insert(copy(s1,4,2),s2,6);
write(s2);
SUBIECTUL al III-lea (30 de puncte)
1. Subprogramul divX are doi parametri, n și x, prin care primește câte un număr natural din intervalul
[2,50]. Subprogramul afișează pe ecran, în ordine descrescătoare, separate prin câte un spațiu, primele
n numere naturale nenule divizibile cu x.
Scrieți definiția completă a subprogramului.
Exemplu: dacă n=4 și x=15 în urma apelului se afișează numerele 60 45 30 15 (10p.)
2. Scrieți un program Pascal care citește de la tastatură numărul natural n (n[2,102]) și elementele unui
tablou bidimensional cu n linii și n coloane, numere naturale din intervalul [0,109].
Programul afișează pe ecran, separate prin câte un spațiu, elementele primului pătrat
concentric, parcurs în sens invers al acelor de ceasornic, începând din colțul său stânga-
sus, ca în exemplu. Primul pătrat concentric este format din prima și ultima linie, prima și
ultima coloană a tabloului.
Exemplu: pentru n=5 și tabloul alăturat, se afișează pe ecran numerele
1 2 3 4 5 6 7 8 9 0 2 4 6 8 1 3 (10p.)
1 3 1 8 6
2 9 2 7 4
3 5 8 5 2
4 1 6 3 0
5 6 7 8 9
3. Fișierul bac.in conține cel mult 106 numere naturale din intervalul [0,109], separate prin câte un spațiu.
Se cere să se afișeze pe ecran, în ordine descrescătoare, cele mai mari două numere de două cifre
distincte care NU se află în fișier. Numerele afișate sunt separate printr-un spațiu, iar dacă nu există două
astfel de numere, se afișează pe ecran mesajul nu exista. Proiectați un algoritm eficient din punctul de
vedere al timpului de executare.
Exemplu: dacă fișierul bac.in conține numerele 12 235 123 67 98 6 96 94 123 67 98 100
se afișează pe ecran, în această ordine, numerele 97 95.
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 1
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 1
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
punctajului total acordat pentru lucrare la zece.
• 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)
1b 2b 3a 4d 5c 5x4p.
SUBIECTUL al II - lea (40 de puncte)
1. a) Răspuns corect: -1 6p.
b) Pentru răspuns corect 6p. Se acordă câte 2p. pentru fiecare dintre cele trei
numere conform cerinței (oricare dintre numerele 7777,
7778, 7779, 7788, 7789, 7799, 7888, 7889, 7899,
7999).
c) Pentru program corect
-declarare variabile
-citire date
-afișare date
-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. Răspuns corect:
149 167 347
6p. Se acordă câte 2p. pentru fiecare soluție conform
cerinței.
3. Răspuns corect:
7
2020-2021
6p. Se acordă câte 2p. pentru fiecare aspect specific
(rezultat al primei instrucțiuni de afișare, primele patru
caractere din s2, ultimele 5 caractere din s2) conform
cerinței.
SUBIECTUL al III - lea (30 de puncte)
1. Pentru subprogram corect
-antet subprogram (*)
-determinare a valorilor cerute (**)
-afișare a datelor (***)
-declarare a tuturor variabilelor locale,
corectitudine globală a subprogramului1)
10p.
2p.
4p.
3p.
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 specific
(identificare a unui multiplu/divizor, valori suport)
conform cerinței.
(***) Se acordă numai 1p. dacă s-au afișat numerele
cerute, dar nu în ordinea precizată.
2. Pentru program corect
-declarare a unei variabile care să
memoreze un tablou bidimensional
-citire a datelor
-determinare a valorilor cerute (*)
-afișare a unor valori
-declarare a variabilelor simple,
corectitudine globală a programului1)
10p.
1p.
1p.
6p.
1p.
1p.
(*) Se acordă câte 1p. pentru fiecare aspect specific
(elemente de pe prima/ultima linie, elemente de pe
prima/ultima coloană, elemente din colțurile cadrului
preluate corect, ordine a parcurgerii pe linii, ordine a
parcurgerii pe coloane, valori suport) conform cerinței.

Baremul · pagina 2

Ministerul Educației
Centrul Național de Politici și Evaluare în Educație
Probă scrisă la informatică Testul 1
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
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ă un vector de apariții, inițial
cu valori nule, în care ap[i]=1 dacă valoarea i apare în
șirul aflat în fișier. Se completează vectorul pe măsura
citirii datelor din fișier, având în vedere numerele de
două cifre, apoi se parcurge de la dreapta la stânga,
începând cu poziția 98, memorându-se primele două
valori x și y, cu cifre distincte, pentru care
ap[x]=ap[y]=0.
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.