Erori de COMPILARE (programul nu pornește)
1. Punct și virgulă lipsă. Fiecare instrucțiune se termină cu ;. Eroarea apare de regulă pe RÂNDUL URMĂTOR celui greșit.
2. Variabile nedeclarate sau scrise diferit. nr și Nr sunt variabile DIFERITE: C++ face diferența între litere mari și mici.
3. Acolade neînchise. Fiecare { are perechea ei }. Aliniază-le vizual ca să le verifici rapid.
4. Biblioteci lipsă. cin/cout cer #include <iostream> (+ using namespace std;), strlen cere <cstring>, sqrt cere <cmath>.
Erori de LOGICĂ (compilează, dar dă rezultate greșite)
1. = în loc de ==. if (x = 5) ATRIBUIE 5 lui x (condiția devine mereu adevărată); comparația corectă e if (x == 5).
2. Împărțirea întreagă. 5 / 2 dă 2, nu 2,5: la întregi, rezultatul e întreg. Pentru medie reală: (a + b) / 2.0.
3. Depășirea vectorului. La int v[10], indicii valizi sunt 0-9; v[10] e în afara vectorului (comportament imprevizibil, fără mesaj clar).
4. Bucla infinită. while (n != 0) fără modificarea lui n în corp nu se termină niciodată.
5. int prea mic. Pentru valori peste ~2 miliarde folosește long long (produsul a două int-uri mari depășește int).
Exemplu: găsește cele 3 erori
#include <iostream>
using namespace std;
int main() {
int a = 5;
if (a == 5)
cout << "egal";
else
cout << "diferit";
return 0;
}Erorile: lipsă ; după int n; = în loc de == în if; lipsă ; după cout.
Greșeli frecvente
- Mesajul de eroare arată deseori rândul de DUPĂ greșeală: verifică și rândul anterior.
5/2 = 2la întregi: adaugă .0 sau folosește float/double când vrei zecimale.- Citirea cu
cin >> sse oprește la spațiu: pentru texte cu spații foloseștecin.getline.