Bacalaureat 2022 la informatică: modelul oficial, 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.

Arată cum va arăta subiectul de la Bac.

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: a) Varianta a

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: d) Varianta d

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: b) Varianta b

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: c) Varianta c

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-p1

II.1.a6 p

textul 6

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

Vezi rezolvarea

Răspuns: 1*1 5*2

II.1.b6 p

textul 6

Construiește datele de intrare cerute în fragment.

Verifică-te pe barem

Un exemplu de răspuns

Două valori sunt x=16 și x=17. Pentru toate valorile k de la x până la 22, [sqrt(k)]=4 și suma pătratelor este 1+4+9+16=30. Numai prima iterație schimbă u=0, deci se afișează doar 30*1.

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 x,y,u=0,nr=0,s;cin>>x>>y;for(int k=x;k<=y;k++){s=0;nr++;for(int t=1;t*t<=k;t++)s+=t*t;
 if(s!=u){cout<<s<<'*'<<nr<<' ';u=s;nr=0;}}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. a datelor -afișare1 p
  4. instrucțiune de decizie2 p
  5. instrucțiuni repetitive (*)3 p
  6. atribuiri1 p
  7. globală a -corectitudine programului 1)1 p

II.1.d6 p

textul 6

Rescrie algoritmul folosind structura repetitivă cerută.

Verifică-te pe barem

Un exemplu de răspuns

citește x,y
u <- 0; nr <- 0; k <- x
cât timp k<=y execută
  s <- 0; nr <- nr+1
  pentru t <- 1,[sqrt(k)] execută s <- s+t*t
  dacă s<>u atunci
    scrie s,'*',nr,' '
    u <- s; nr <- 0
  k <- k+1

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

Criterii (după barem)

  1. utilizare a unei structuri repetitive de tipul cerut (*)2 p
  2. specifice ale secvenței obținute -aspecte prin înlocuire, conform cerinței (**)3 p
  3. complet, corectitudine globală a -algoritm 1) algoritmului1 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 7 8

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

struct zbor{int cod;struct{int ora,minut;}aterizare;int durata;};
zbor z;

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

Criterii (după barem)

  1. a structurii/înregistrării (*) -definire4 p
  2. a variabilei conform cerinței -declarare1 p
  3. globală a secvenței -corectitudine 1)1 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

int mozaic(int x,int y,int z){int a=x,b=y;while(b){int r=a%b;a=b;b=r;}int m=x/a*y;
 a=m;b=z;while(b){int r=a%b;a=b;b=r;}return m/a*z;
}

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

Criterii (după barem)

  1. antet subprogram (*)2 p
  2. determinare a valorii cerute (**)6 p
  3. de returnare a -instrucțiune/instrucțiuni rezultatului1 p
  4. declarare a tuturor variabilelor locale, corectitudine globală a subprogramului 1)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,c;getline(cin,s);istringstream in(s);int k=0;bool ok=true;
 while(in>>c)if(c[0]>='0' && c[0]<='9'){if(k==0)k=c.size();else if((int)c.size()!=k)ok=false;}
 if(ok)cout<<k;else cout<<"NU";return 0;}

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

Criterii (după barem)

  1. a unei variabile care să -declarare memoreze un șir de caractere1 p
  2. citire a datelor1 p
  3. determinare a valorii cerute (*)6 p
  4. și afișare fie a -tratare a cazului NU numărului 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

Pentru fiecare cifră pară memorez prima și ultima poziție în șir. Cea mai lungă secvență cu acea valoare la capete este de la prima până la ultima apariție și are lungimea ultima-prima+1. Maximul se calculează peste cele cinci cifre pare. Afișez apoi cifrele care ating maximul, în ordine crescătoare. Timp O(m+10), memorie O(10).

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

Criterii (după barem)

  1. a descrierii algoritmului (*) -coerență1 p
  2. a elementelor de eficiență -justificare1 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>
using namespace std;
int main(){ifstream f("bac.txt");int prima[10]={0},ultima[10]={0},p=0,v,maxim=0;
 while(f>>v){p++;if(v%2==0){if(prima[v]==0)prima[v]=p;ultima[v]=p;int l=p-prima[v]+1;if(l>maxim)maxim=l;}}
 cout<<maxim<<'\n';for(int c=0;c<=8;c+=2)if(prima[c]>0 && ultima[c]-prima[c]+1==maxim)cout<<c<<' ';return 0;}

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

Criterii (după barem)

  1. cu fișiere: declarare, pregătire în -operații vederea citirii, citire din fișier1 p
  2. determinare a valorilor cerute (*),(**)5 p
  3. utilizare a unui algoritm eficient (***)1 p
  4. a variabilelor, afișare a datelor, -declarare 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ă.