C++ kiritilgan ma’lumotni tekshirish
Kiritilgan ma’lumotni tekshirish
Foydalanuvchilar dasturga ma’lumot kiritganda kutilmagan narsa yozib qo‘yishi mumkin. Kiritilgan ma’lumotni tekshirish (input validation) dasturingiz ishini davom ettirishidan oldin kiritilgan ma’lumot to‘g‘riligiga ishonch hosil qiladi.
Tekshiruvsiz dasturingiz ishdan chiqishi yoki noto‘g‘ri ishlashi mumkin!
Quyidagi misollar foydalanuvchi kiritgan ma’lumot to‘g‘riligini tekshirishning oddiy usullarini ko‘rsatadi.
Butun son kiritilishini tekshirish
Foydalanuvchi son kiritishiga ishonch hosil qiling. Agar u boshqa narsa (masalan, harf) kiritsa, qayta so‘rang:
int number;
cout << "Enter a number: ";
while (!(cin >> number)) { // Keep asking until the user enters a valid number
cout << "Invalid input. Try again: ";
cin.clear(); // Reset input errors
cin.ignore(10000, '\n'); // Remove bad input
}
cout << "You entered: " << number;
Natija namunasi:
Enter a number: f
Invalid input. Try again: 3
You entered: 3
Son oralig‘ini tekshirish
Son ruxsat etilgan oraliqda (masalan, 1 dan 5 gacha) ekanini tekshiring:
int number;
do {
cout << "Choose a number between 1 and 5: ";
cin >> number;
} while (number < 1 || number> 5); // Keep asking until the user enters a number between 1 and 5
cout << "You chose: " << number;
Natija namunasi:
Choose a number between 1 and 5: 8
Choose a number between 1 and 5: -2
Choose a number between 1 and 5: 4
You chose: 4
Matnli kiritishni tekshirish
Ism bo‘sh emasligini tekshiring:
string name;
do {
cout << "Enter your name: ";
getline(cin, name);
} while (name.empty()); // Keep asking until the user enters something (name is not empty)
cout << "Hello, " << name;
Natija namunasi:
Enter your name:
Enter your name:
Enter your name: John
Hello, John
Maslahat: cin obyekti haqida <iostream> kutubxonasi ma’lumotnomamizda batafsil o‘qishingiz mumkin.
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
