1. Structura unui program C++
// biblioteca pentru I/O (intrare/iesire) #include <iostream> using namespace std; // ca sa scriem cout in loc de std::cout int main() { cout << "Hello, World!" << endl; return 0; // programul s-a terminat cu succes }
Iesire reala (compilat cu g++ -std=c++17):
Hello, World!
#include- importa o bibliotecaint main()- functia principala, punctul de pornire (obligatorie)cout <<- afiseaza pe ecranendl- trece pe rand nou (end line)return 0- sfarsit cu succes- Fiecare instructiune se termina cu
;
2. Afisare cu cout
#include <iostream> #include <string> // necesar pentru tipul string using namespace std; int main() { // Afisare text cout << "Salut!" << endl; // Afisare variabile, inlantuite cu << string nume = "Maria"; int varsta = 15; cout << "Ma numesc " << nume << endl; cout << "Am " << varsta << " ani" << endl; return 0; }
Iesire reala:
Salut!
Ma numesc Maria
Am 15 ani
Cand folosesti tipul string, include explicit <string>. Unele compilatoare il aduc automat prin <iostream>, dar nu te baza pe asta — pe alt compilator codul ar putea sa nu se compileze.
3. Citire cu cin
#include <iostream> #include <string> using namespace std; int main() { string nume; int varsta; cout << "Cum te cheama? "; cin >> nume; // cin citeste pana la primul spatiu cout << "Cati ani ai? "; cin >> varsta; // converteste automat textul la int cout << "Salut, " << nume << "!" << endl; cout << "Peste 5 ani vei avea " << varsta + 5 << " ani" << endl; return 0; }
Iesire reala (intrare de la tastatura: Andrei apoi 15):
Cum te cheama? Cati ani ai? Salut, Andrei!
Peste 5 ani vei avea 20 ani
cin >> nume citeste un singur cuvant: se opreste la primul spatiu. Pentru un nume cu mai multe cuvinte foloseste getline (vezi atomul urmator).
4. getline si tipul double intensiv
Acest atom extinde dincolo de minimul cerut: citire de randuri complete si numere reale.
#include <iostream> #include <string> using namespace std; int main() { string nume_complet; cout << "Nume complet: "; getline(cin, nume_complet); // citeste tot randul, inclusiv spatiile double nota; // double = numar real (cu zecimale) cout << "Nota: "; cin >> nota; cout << "Elevul " << nume_complet << " are nota " << nota << endl; return 0; }
Iesire reala (intrare: Maria Ionescu apoi 9.75):
Nume complet: Nota: Elevul Maria Ionescu are nota 9.75
5. Python vs C++ - Comparatie
| Aspect | Python | C++ |
|---|---|---|
| Afisare | print("text") | cout << "text"; |
| Citire | input() | cin >> var; |
| Declarare var | x = 5 | int x = 5; |
| Sfarsit instructiune | rand nou | ; |
| Tipuri | dinamice | statice (declarate) |
| Executie | interpretat | compilat |
Python iti da viteza de scriere si idei clare; C++ iti da control si viteza de executie (programul compilat ruleaza rapid, fara interpretor). La olimpiade si concursuri de programare, C++ este foarte folosit tocmai pentru viteza.