InfoBook.ro ← Harta anului
Modul 06 · Biblioteci
Modul 06 · Biblioteci

Nu reinventăm roata

O bibliotecă e un set de unelte gata scrise și testate. C++ le aduce cu #include, Python cu import. După modulele 05b și 05c cunoști deja uneltele — azi înveți harta cutiilor din atelier.

🎯 Obiectiv 1Știi ce bibliotecă C++ include fiecare funcție folosită la BAC.
🎯 Obiectiv 2Cunoști modulele Python echivalente: math, random.
🎯 Obiectiv 3Traduci rapid între C++ și Python folosind tabelul comparativ.
1

C++: #include — trusa de scule

Directiva #include aduce în program o bibliotecă gata scrisă. Cele patru pe care le folosești mereu:

<iostream>

Intrare/ieșire: cin, cout. Primul rând din aproape orice program.

<cmath>

Funcții matematice: sqrt(), pow(), rotunjiri — detaliate în Modulul 05b.

<algorithm>

Funcții pentru vectori: sort(), find(), min/max, swap.

<fstream>

Citire/scriere din fișiere: ifstream, ofstream — le folosim serios în Modulul 10.

Le-ai întâlnit deja și pe: <cstring> (funcțiile de șiruri, Modulul 04b), <cctype> (teste de caractere), <climits> (INT_MAX/INT_MIN) și <iomanip> (setprecision) — toate în Modulul 05b. O bibliotecă nouă = un #include nou, atât.
2

Python: import — modulele

Python numește bibliotecile „module". Multe funcții sunt built-in (fără import!) — dar două module merită știute:

import math

math.sqrt(), math.pow(), math.pi — matematica ce nu e built-in. Reminder: multe se descurcă și fără (x ** 0.5).

import random

random.randint(a, b) — un întreg aleator din [a, b]. Perfect pentru exerciții, simulări și jocuri.

🎲 Demo live: random în acțiune — aruncă zarul

apasă butonul — de fiecare dată alt rezultat 👆
3

Tabelul de traducere C++ ↔ Python

Caută o funcție sau apasă pe un rând ca să vezi codul complet în ambele limbaje.

🔍
Funcție⚙ C++ (bibliotecă)🐍 Python (modul)
Regula de aur (a doua oară, pentru că merită): înainte să scrii o funcție de mână, întreabă-te dacă nu există deja în bibliotecă. La BAC, sort() din <algorithm> îți economisește 10 rânduri și 10 minute.
4

Fișa de sinteză

Harta bibliotecilor, pe scurt.

#include <…> (C++) și import … (Python) aduc unelte gata scrise în program.
C++ de bază: iostream (cin/cout), cmath (sqrt/pow), algorithm (sort/find), fstream (fișiere).
Python: mult e built-in (abs, len, sorted…); math și random se importă.
random.randint(a,b)rand() % n (din <cstdlib>) — numere aleatoare în ambele limbaje.
Ai uitat unde e o funcție? Tabelul de mai sus + tabelele recapitulative din 05b/05c.
fstream e singura de aici încă nefolosită — o descoperim pe larg la fișiere (Modulul 10).
Exersează pe pbinfo.ro — patru probleme în care bibliotecile fac treaba grea:
#354 · ușoară

n_maxim

Cel mai mare dintre n numere — încearcă max_element din <algorithm> sau max() din Python.

Rezolvă pe pbinfo.ro →
#355 · ușoară

n_minim

Cel mai mic dintre n numere — folosește min() din bibliotecă.

Rezolvă pe pbinfo.ro →
#347 · ușoară

SumMaxMin

Suma dintre cel mai mare și cel mai mic număr dat.

Rezolvă pe pbinfo.ro →
#3812 · medie

Inaltimi2

Înălțimile unui triunghi din lungimile laturilor — necesită sqrt() din cmath/math.

Rezolvă pe pbinfo.ro →
← anteriorModul 05c · Funcții Python & clasa list urmează →Modul 07 · Generarea de secvențe