Cu doar două superputeri — „dacă…atunci" și „repetă cât timp" — poți construi orice algoritm din lume. Serios: orice. Astăzi le stăpânești pe amândouă.
Programul ajunge la o răscruce, pune o întrebare cu răspuns DA/NU și alege drumul. Rulează-l pas cu pas!
| nota | — |
| Relațional | Înțeles |
|---|---|
| < > <= >= | comparații obișnuite |
| == | egal? (DOUĂ semne egal!) |
| != | diferit? |
| Logic (C++ / Python) | Înțeles |
|---|---|
| && / and | ambele condiții adevărate |
| || / or | măcar una adevărată |
| ! / not | inversează valoarea de adevăr |
Când drumurile sunt mai mult de două, legăm deciziile în lanț: prima condiție adevărată câștigă, restul nici nu se mai verifică.
| v | — |
Când compari aceeași variabilă cu mai multe valori exacte, ambele limbaje au o poartă cu mai multe ieșiri.
switch-ul „deschide" exact ușița potrivită — și linia de cod corespunzătoare se aprinde în ambele limbaje
⚙ C++ — switch
🐍 Python — match (3.10+)
Regula sună ciudat: divizibil cu 4, dar nu cu 100 — sau divizibil cu 400. De unde vine? Din astronomie!
Un an real (o rotație completă în jurul Soarelui) durează 365,2422 zile — nu fix 365. Dacă am ignora restul, calendarul ar „aluneca": după câteva sute de ani, Crăciunul ar pica vara. Repararea s-a făcut în două etape:
| Cât durează anul real | 365,2422 zile |
| Eroarea lui Cezar: 365,25 − 365,2422 | +0,0078 zile/an → +3,12 zile în 400 de ani |
| Corecția lui Grigore: scoate 3 bisecți → (400 · 365 + 97) / 400 | 365,2425 zile/an |
| Eroarea rămasă: 365,2425 − 365,2422 | 0,0003 zile/an ≈ 26 s/an |
Trei unelte pentru aceeași treabă — diferă doar când se verifică condiția și cine numără.
Verifică înainte de fiecare pas. Poate să nu execute niciodată corpul.
Folosește-l când nu știi de câte ori repeți: „cât timp mai am cifre…"
Verifică după. Corpul se execută garantat măcar o dată.
Perfect pentru meniuri și validări. (Nu există în Python — se simulează cu while True + break.)
Contor integrat: inițializare, condiție, pas — toate pe o linie.
Folosește-l când știi numărul de repetări: „pentru fiecare i de la 1 la n".
| n | — |
Algoritmul-rege al capitolului. Privește cum se rotește bucla în schemă, în cod și în tabelul de urmărire — simultan.
| n | — |
| i | — |
| s | — |
| verificare i ≤ n | i | s |
|---|
Două programe pot da același răspuns muncind foarte diferit. Numără pașii cu noi.
Două programe, două erori clasice. Găsește linia vinovată din fiecare.
Trei întrebări în stil BAC. Fă tabelul de urmărire în minte (sau pe hârtie!) înainte să alegi.
Ideile-temelie ale întregului an.