La BAC informatică, diferența dintre 9 și 10 rareori ține de o problemă pe care n-ai știut-o. Aproape întotdeauna ține de un punct și virgulă uitat, de o variabilă neinițializată sau de un caz în care numărul citit era 0. Nota se obține împărțind la 10 punctajul din 100 (cu 10 puncte din oficiu), deci un 10 curat înseamnă toate cele 90 de puncte de pe foaie. Asta schimbă complet strategia: nu cauți probleme spectaculoase, ci elimini sistematic greșelile.

1. Fă din Subiectul II punctaj garantat

Itemul II.1 are patru cerințe (a, b, c, d) în valoare totală de 28 de puncte, toate pe același algoritm în pseudocod. E cea mai mare sumă de puncte legată de o singură abilitate: să înțelegi un algoritm scurt. Ce trebuie să stăpânești perfect:

Itemii 2 și 3 din Subiectul II sunt scurți, dar fiecare are 6 puncte. Recapitulează declararea unui struct și accesul la câmpuri, condițiile pe indici în matrice și funcțiile din <cstring>.

2. Învață pe de rost câteva „șabloane” de cod

Subiectul III pare liber, dar cerințele se repetă: cifrele unui număr, divizori, numere prime, CMMDC, vectori de frecvență, cuvinte dintr-un text, citire din fișier până la final. Fiecare dintre acestea are o formă standard pe care trebuie s-o poți scrie fără să te gândești. De exemplu, parcurgerea cifrelor:

while (n != 0) {
    int c = n % 10;
    // prelucrezi cifra c
    n = n / 10;
}

Când șablonul e automatism, toată atenția ta rămâne pentru partea specifică a problemei. Scrie fiecare șablon de mână de cel puțin 5–6 ori în săptămânile de pregătire; la examen scrii tot de mână, nu tastezi.

3. Testează pe cazuri limită, nu doar pe exemplul din enunț

Exemplul din enunț e ales să meargă. Corectorul se uită însă dacă programul e corect pentru orice date valide. Înainte să predai, rulează mental codul pe:

Exemplu concret: un subprogram care returnează cea mai mare cifră a lui n. Varianta de mai jos pare corectă, dar pentru n = 0 nu intră deloc în buclă și returnează valoarea inițială. Aici merge, pentru că maxim pornește de la 0, deci rezultatul e chiar cifra 0. Dacă ai fi inițializat cu -1, ai fi greșit.

int cifraMaxima(int n) {
    int maxim = 0;
    while (n != 0) {
        if (n % 10 > maxim)
            maxim = n % 10;
        n = n / 10;
    }
    return maxim;
}

4. La problema cu fișier: corect întâi, eficient apoi

La III.3 se cere un algoritm eficient ca timp și memorie. Mulți elevi se blochează căutând soluția optimă și nu mai scriu nimic. Greșeală. O soluție corectă dar mai puțin eficientă primește de regulă o parte din punctaj, pe când o foaie goală primește zero. Ordinea bună:

  1. scrie pe ciornă cea mai simplă soluție corectă;
  2. întreabă-te: trebuie să memorez toate numerele? Pot afla răspunsul dintr-o singură parcurgere? Valorile sunt mici (de exemplu, cifre sau numere sub 1000), deci merge un vector de frecvență?
  3. dacă găsești varianta mai bună, pe aceea o scrii pe foaie.

Și nu uita punctul a): descrierea algoritmului în 3–4 propoziții, cu o justificare explicită a eficienței, de tipul „numerele sunt citite o singură dată, iar memoria folosită nu depinde de numărul de valori din fișier”.

La BAC: citește de două ori formatul de afișare cerut. „Separate prin câte un spațiu”, „pe linii diferite”, „în ordine descrescătoare” — fiecare dintre ele poate costa puncte dacă e ignorat.

5. Teoria pentru grile nu se improvizează

Subiectul I are 20 de puncte fără punctaj parțial. Aici contează teoria exactă: câte muchii are un graf complet cu n noduri (n(n−1)/2), ce e o frunză într-un arbore, în ce ordine generează backtracking-ul soluțiile, cum se evaluează o expresie cu && și ||. Asemenea lucruri se rețin cel mai bine prin repetare scurtă și deasă — flashcard-uri, câteva minute pe zi — nu prin citit capitolul o dată.

6. Simulări cronometrate, corectate cinstit

Ultimele 4–5 săptămâni ar trebui să conțină simulări complete: 3 ore, fără întreruperi, pe hârtie. Apoi corectezi cu baremul, sever, ca un profesor care nu te cunoaște. Notează-ți separat fiecare punct pierdut și motivul: „neinițializat”, „condiție inversată la repetă”, „n-am tratat cazul fără soluție”. După câteva simulări vei vedea că greșelile tale se repetă — și exact pe acelea le elimini.

7. Verificarea finală: lista de control

Păstrează ultimele 10–15 minute pentru o trecere rapidă prin lucrare:

Nota 10 la informatică e, în mare parte, o chestiune de disciplină. Dacă îți construiești obiceiurile de mai sus din timp, în ziua examenului le aplici fără efort.

De reținut