Niciun programator bun nu începe cu tastatura. Începe cu o foaie de hârtie, câteva întrebări și un desen. Astăzi înveți drumul complet: de la problemă → la algoritm → la program care rulează.
Le urmărim pe o problemă reală: „Calculați media semestrială a unui elev din 3 note." Apasă pe fiecare etapă.
Același algoritm poate fi exprimat în mai multe feluri — de la desen la cod-mașină. Fiecare are rostul lui.
Schema logică: desenul algoritmului. Perfectă la început, pentru că vezi fluxul. Devine greoaie la algoritmi mari.
Românește + structură: „citește", „dacă…atunci", „scrie". Limbajul subiectelor de BAC — îl exersăm constant.
C++ / Python — înțeles de oameni, tradus pentru mașină. Aici se scrie software-ul lumii reale.
Procesorul înțelege doar cod-mașină (biții din Modulul 00!). Diferența dintre C++ și Python e când se face traducerea:
Un limbaj de programare e un set de reguli sintactice și semantice prin care îi spunem calculatorului, exact și fără ambiguitate, ce să facă.
Creat de Bjarne Stroustrup ca extensie a limbajului C (Dennis Ritchie & Brian Kernighan). Unul dintre cele mai folosite limbaje din industrie și limba oficială a probei de BAC.
Ai nevoie de un IDE (mediu integrat de dezvoltare) care compilează și rulează codul — cel mai folosit la școală: Code::Blocks.
Gândit pentru lizibilitate: mai puțină sintaxă „de decor", aceeași putere de calcul. Îl folosim în paralel pentru că exprimă rapid ideea unui algoritm, înainte s-o traducem riguros în C++.
E suficient un editor cu interpretor integrat: Thonny, IDLE sau VS Code.
O variabilă e o cutie cu etichetă din memoria calculatorului: eticheta e numele, în cutie stă valoarea, iar tipul decide cât de mare e cutia.
Apasă pe o declarație și privește cum se rezervă octeții în memorie. Fiecare pătrățel = 1 octet (8 biți — îi știi din Modulul 00!).
Cu variabilele „substantive" și operatorii „verbe" poți forma primele propoziții. Apasă pe orice rând ca să vezi un exemplu calculat.
| Operație | Pseudocod | 🐍 Python | ⚙ C++ |
|---|
În C++, 7 / 2 = 3 dacă ambele numere sunt întregi (împărțire întreagă!). În Python, 7 / 2 = 3.5 mereu, iar pentru câtul întreg există 7 // 2 = 3.
Atribuiri compuse: x += 3 înseamnă x = x + 3 (la fel -=, *=, /=). Doar în C++: x++ crește x cu 1, iar operatorul ternar alege dintr-o singură linie:
Algoritmul: maximul dintre două numere. Alege valorile, apoi execută Pas cu pas — schema, codul și variabilele se mișcă împreună.
| a | — |
| b | — |
| max | — |
La BAC scrii C++ — deci îl tratăm cu respect de la prima oră. Click pe fiecare linie ca să afli ce face.
Fiecare linie dintr-un program C++ are un rol precis. Apasă pe oricare din stânga.
Un program netestat e un program greșit care încă n-a fost prins. Înveți să gândești ca un „vânător de erori".
| Tip de test | Exemplu de date | Ce verifică |
|---|---|---|
| Valori obișnuite | 7 și 9 → media 8 | Funcționează cazul normal? |
| Valori de limită | 1 și 1 · 10 și 10 | Merge la marginile intervalului? |
| Rezultat neîntreg | 7 și 8 → media 7.5 | Se pierde partea zecimală? |
| Date invalide | nota 11 sau -3 | Programul validează intrarea? |
Programul ar trebui să afișeze media lui 7 și 8 (adică 7.5), dar afișează 7. Click pe linia vinovată.
Trei căi prin care un program primește și trimite date — le folosim pe toate în acest an.
Text simplu: cin/cout, input/print. Aici lucrăm cel mai des — și tot aici se dă BAC-ul.
Ferestre, butoane, casete text — le construim în Modulul 12 cu Tkinter.
Programul citește și scrie date pe disc, fără om la tastatură — Modulul 10.
Opt idei de păstrat. Restul se construiește pe ele.