Ce afișează?
Citești o secvență de cod și scrii ce afișează, ca la Subiectul al II-lea. 16 tipuri de secvențe, cu numere noi la fiecare rundă, pe care le poți urmări linie cu linie.
Exercițiul
Citește codul și scrie ce afișează. După răspuns îl poți urmări pas cu pas, cu valorile variabilelor.
Se pregătește runda…
Cum apare la BAC
La examen
- Unde apare
- Subiectul al II-lea, itemul 1, și unele grile de la Subiectul I.
- Cum arată itemul
- Primești un algoritm în pseudocod. La a) scrii ce se afișează pentru niște date citite; apoi dai date de test, scrii programul C/C++ și un algoritm echivalent. La Subiectul I, unele grile cer ce afișează un subprogram, de exemplu unul recursiv.
- Punctaj
- 6 puncte pentru „ce se afișează” (din cele 28 ale itemului 1); o grilă de la Subiectul I valorează 4 puncte.
- Sfat
- Fă pe ciornă tabelul variabilelor, linie cu linie, și verifică atent ultima trecere prin buclă.
Structura subiectelor se poate schimba de la un an la altul. Modelul oficial și baremele sunt pe site-ul Ministerului Educației.
Cum urmărești un algoritm
- Fă un tabel cu o coloană pentru fiecare variabilă și una pentru ce se afișează.
- Execută liniile în ordine și scrie o valoare nouă doar când se schimbă.
- La fiecare buclă verifică condiția înainte de fiecare trecere, inclusiv la ultima, care oprește bucla.
- În pseudocod, [x] este partea întreagă, iar % este restul împărțirii, ca în C++ la numere naturale.
- La funcții, un parametru cu & schimbă variabila din apel; unul fără & lucrează pe o copie.
- La recursivitate, ce e înaintea autoapelului se execută la coborâre, iar ce e după, la revenire, în ordine inversă.
Ieșirea fiecărei secvențe e calculată de o simulare scrisă pentru acel tip de cod; secvențele C++ au fost verificate și cu un compilator. Nu se rulează cod scris de tine.
Teoria din spatele exercițiilor
- Lecția „Pseudocodul de BAC: citirea și urmărirea algoritmilor”
- Lecția „Structurile if/else și while”
- Lecția „Bucle imbricate și tiparele clasice”
- Lecția „Prelucrări clasice de vectori: maxim, sortare, căutare”
- Lecția „Șiruri de caractere în C++”
- Lecția „Transmiterea parametrilor: valoare vs referință”
- Lecția „Urmărirea funcțiilor recursive cu afișări”
- Lecția „Prelucrarea cifrelor unui număr”
- Lecția „Divizibilitate, numere prime și algoritmul lui Euclid”
- Lecția „Șirul lui Fibonacci și calculul sumelor”