Teme Avansate
Validarea input-ului
Validarea input-ului previne comportamentul nedefinit și îmbunătățește experiența utilizatorului.
int nota;
cout << "Introdu nota (1-10): ";
while (!(cin >> nota) || nota < 1 || nota > 10) {
cin.clear(); // resetează starea de eroare
cin.ignore(10000, '\n'); // golește buffer-ul
cout << "Nota invalida! Reintrodu (1-10): ";
}
cout << "Nota valida: " << nota << endl;Verificare tip de date
string input;
cin >> input;
bool esteNumar = true;
for (char c : input) {
if (!isdigit(c)) { esteNumar = false; break; }
}
if (esteNumar) cout << "Este un numar: " << stoi(input) << endl;
else cout << "Nu este un numar!" << endl;