Bacalaureat 2022 la informatică: simularea, mate-info

Subiectul oficial din 2022, cu baremul, pe 90 de puncte. Grilele și răspunsurile scurte le verifici pe loc; restul le scrii aici sau pe caiet, apoi te verifici pe barem.

Proba de antrenament dată în școli, de obicei în martie. Nota nu contează.

3 ore · 90 de puncte + 10 din oficiu

Subiectul (PDF)Baremul (PDF)

Pe timp, ca la examen

Ceasul merge și dacă închizi pagina. Poți lua o singură pauză. La final, nota estimată după barem.

Subiectul ISubiectul al II-leaSubiectul al III-lea

Subiectul I 20 p

Textul 1

Fragment original al subiectului de informatică I-1-p1

I.14 p

textul 1

Cerința e în imaginea de mai sus, exact ca în subiectul oficial.

Vezi rezolvarea

Răspuns: d) Varianta d

Textul 2

Fragment original al subiectului de informatică I-2-p1

I.24 p

textul 2

Cerința e în imaginea de mai sus, exact ca în subiectul oficial.

Vezi rezolvarea

Răspuns: b) Varianta b

Textul 3

Fragment original al subiectului de informatică I-3-p1

I.34 p

textul 3

Cerința e în imaginea de mai sus, exact ca în subiectul oficial.

Vezi rezolvarea

Răspuns: c) Varianta c

Textul 4

Fragment original al subiectului de informatică I-4-p1

I.44 p

textul 4

Cerința e în imaginea de mai sus, exact ca în subiectul oficial.

Vezi rezolvarea

Răspuns: a) Varianta a

Textul 5

Fragment original al subiectului de informatică I-5-p1

I.54 p

textul 5

Cerința e în imaginea de mai sus, exact ca în subiectul oficial.

Vezi rezolvarea

Răspuns: c) Varianta c

Subiectul al II-lea 40 p

Textul 6

Fragment original al subiectului de informatică II-1-p2

II.1.a6 p

textul 6

Cerința e în imaginea de mai sus, exact ca în subiectul oficial.

Vezi rezolvarea

Răspuns: 3

II.1.b6 p

textul 6

Construiește datele de intrare cerute în fragment.

Verifică-te pe barem

Un exemplu de răspuns

Două exemple sunt 2211 și 2233. Cifrele finale 11, respectiv 33, sunt impare și sunt eliminate. Următoarea cifră este 2, pară ca x, astfel rămâne exact 22.

Exemplu scris de Zece, nu singurul răspuns bun.

Criterii (după barem)

  1. b) Pentru răspuns corect6 p

II.1.c10 p

textul 6

Scrie programul C/C++ corespunzător algoritmului din fragment.

Verifică-te pe barem

Un exemplu de răspuns

#include <iostream>
using namespace std;
int main(){int n,x,nr=0,i=1,y;cin>>n>>x;while(i<=n){cin>>y;while(y!=0 && y%2!=x%2)y/=10;if(y==x)nr++;i++;}cout<<nr;return 0;}

Exemplu scris de Zece, nu singurul răspuns bun.

Criterii (după barem)

  1. declarare a variabilelor1 p
  2. citire a datelor1 p
  3. afișare a datelor1 p
  4. instrucțiune de decizie2 p
  5. instrucțiuni repetitive (*)3 p
  6. atribuiri1 p
  7. globală a programului 1) -corectitudine1 p

II.1.d6 p

textul 6

Rescrie algoritmul folosind structura repetitivă cerută.

Verifică-te pe barem

Un exemplu de răspuns

citește n,x
nr <- 0
pentru i <- 1,n execută
  citește y
  cât timp y<>0 și y%2<>x%2 execută
    y <- [y/10]
  dacă y=x atunci nr <- nr+1
scrie nr

Exemplu scris de Zece, nu singurul răspuns bun.

Criterii (după barem)

  1. utilizare principial corectă a unei structuri de tip pentru...execută repetitive (*)2 p
  2. aspecte specifice ale secvenței obținute prin înlocuire, conform cerinței (**)3 p
  3. algoritm complet, corectitudine globală a algoritmului 1)1 p
Textul 7

Fragment original al subiectului de informatică II-2-p2

II.26 p

textul 7

Cerința e în imaginea de mai sus, exact ca în subiectul oficial.

Vezi rezolvarea

Răspuns: 1 4 6

Textul 8

Fragment original al subiectului de informatică II-3-p2

II.36 p

textul 8

Rezolvă cerința din fragmentul original.

Verifică-te pe barem

Un exemplu de răspuns

ok=0;
for(j=1;j<14;j++)
 if(a[0][j]==a[2][j] && a[0][j]==a[1][j-1] && a[0][j]==a[1][j+1])ok=1;

Exemplu scris de Zece, nu singurul răspuns bun.

Criterii (după barem)

  1. acces la un element al tabloului1 p
  2. a proprietății -verificare cerute (*)4 p
  3. globală a secvenței 1) -corectitudine1 p

Subiectul al III-lea 30 p

Textul 9

Fragment original al subiectului de informatică III-1-p2

III.110 p

textul 9

Rezolvă cerința din fragmentul original.

Verifică-te pe barem

Un exemplu de răspuns

void rest(int x,int y,int n,int &k){if(x<=2){k=0;return;}int a=x,b=y;while(b){int r=a%b;a=b;b=r;}
 long long l=1LL*x/a*y;k=(int)(2+(n-2)/l*l);
}

Exemplu scris de Zece, nu singurul răspuns bun.

Criterii (după barem)

  1. antet subprogram (*)3 p
  2. determinare a valorii cerute (**)6 p
  3. declarare a tuturor variabilelor locale, corectitudine globală a tratare a cazului 0,1 p
Textul 10

Fragment original al subiectului de informatică III-2-p2

III.210 p

textul 10

Rezolvă cerința din fragmentul original.

Verifică-te pe barem

Un exemplu de răspuns

#include <iostream>
#include <sstream>
#include <string>
using namespace std;
int main(){string s,x,persoana,prenume,nume;getline(cin,s);cin>>x;istringstream lista(s);bool exista=false;
 while(getline(lista,persoana,';')){istringstream in(persoana);if(in>>prenume>>nume)if(prenume==x){cout<<nume<<' ';exista=true;}}
 if(!exista)cout<<"NU";return 0;}

Exemplu scris de Zece, nu singurul răspuns bun.

Criterii (după barem)

  1. a unei variabile care să -declarare șir memoreze un de caractere1 p
  2. în ordinea indicată -citire a datelor1 p
  3. determinare a cuvintelor/numelor cerute (*)6 p
  4. și afișare -tratare a cazului NU fie a numelor în formatul cerut, fie a mesajului indicat1 p
  5. declarare a variabilelor simple, corectitudine globală a programului 1)1 p
Textul 11

Fragment original al subiectului de informatică III-3-p2

III.3.a2 p

textul 11

Descrie algoritmul și justifică eficiența lui.

Verifică-te pe barem

Un exemplu de răspuns

Deoarece 45=3^2*5, exponentul căutat este min([v3(n!)/2],v5(n!)). Fiecare exponent se calculează prin împărțiri repetate ale unei copii a lui n la prim și adunarea câturilor. Timp O(log n), memorie O(1).

Exemplu scris de Zece, nu singurul răspuns bun.

Criterii (după barem)

  1. a descrierii algoritmului (*) -coerență1 p
  2. justificare a elementelor de eficiență1 p

III.3.b8 p

textul 11

Scrie programul C/C++ pentru problema din fragment.

Verifică-te pe barem

Un exemplu de răspuns

#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
int main(){long long n,x,a=0,b=0;cin>>n;x=n;while(x){x/=3;a+=x;}x=n;while(x){x/=5;b+=x;}ofstream f("bac.txt");f<<min(a/2,b);return 0;}

Exemplu scris de Zece, nu singurul răspuns bun.

Criterii (după barem)

  1. cu fișiere: declarare, pregătire în -operații fișier vederea scrierii, scriere în1 p
  2. determinare a valorii cerute (*),(**)5 p
  3. utilizare a unui algoritm eficient (***)1 p
  4. declarare a variabilelor, citire a datelor, corectitudine globală a programului 1)1 p
Ai terminat? Bifează pe barem ce ai făcut și află câte puncte ai fi luat. Alte subiecte de informatică.