C++ kiritilgan ma’lumotni tekshirish


ULASHISH

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!