اعتبارسنجی ورودی (Input Validation)
اعتبارسنجی ورودی (Input Validation) یعنی بررسی ورودی کاربر. ما قبل از ادامه برنامه، ورودی را چک می کنیم. بنابراین برنامه نمی ریزد و خروجی غلط نمی دهد.
اعتبارسنجی ورودی عدد صحیح
ببین ورودی واقعاً عدد است. اگر نبود، دوباره بپرس. سپس خطاهای ورودی را پاک کن.
int number;
cout << "Enter a number: ";
while (!(cin >> number)) {
cout << "Invalid input. Try again: ";
cin.clear();
cin.ignore(10000, '\n');
}
cout << "You entered: " << number;
اعتبارسنجی بازه عدد
چک کن عدد در بازه مجاز باشد. اگر نبود، دوباره بپرس.
int number;
do {
cout << "Choose a number between 1 and 5: ";
cin >> number;
}
while (number < 1 || number > 5);
cout << "You chose: " << number;
اعتبارسنجی متن
نام نباید خالی باشد. پس تا پر نشد، دوباره بپرس.
string name;
do {
cout << "Enter your name: ";
getline(cin, name);
}
while (name.empty());
cout << "Hello, " << name;
گام های عملی سریع
- قبل از استفاده، ورودی را بررسی کن.
- اگر نامعتبر بود، پیام بده و دوباره بپرس.
- حالت خطا را با
cin.clear()وignore()پاک کن.
نکته: درباره شی cin و مرجع <iostream> بیشتر بخوان.
برای مدیریت خطا هنگام اجرا، صفحه استثناها را ببین. همچنین صفحه اشکال زدایی به یافتن خطا کمک می کند. اگر نیاز داشتی، به اعتبارسنجی ورودی برگرد.
جمع بندی سریع
- ورودی اشتباه، برنامه را به هم می زند.
- ورودی عددی را همیشه چک کن.
- بازه مجاز تعیین کن.
- رشته خالی را نپذیر.
clearوignoreرا فراموش نکن.