Conditionlar (if else)

C++ da Conditionlar (if else) haqida

C++ da Conditionlar (if else)

C++ matematikadagi odatiy mantiqiy taqqoslashlarni qo’llab quvvatlaydi. Taqqoslash natijasidan kelib chiqib bajarilishi kerak bo’lgnan harakatlar uchun conditionlardan foydalanishimiz mumkin. C++ da quidagi conditionlar mavjud :

  • if belgilangan shart True qiymat qaytarganda bajarilishi kerak bo’lgan ko’d blo’kini belgilash uchun.
  • else belgilangan shart False qiymat qaytarganda bajarilishi kerak bo’lgan ko’d blo’kini belgilash uchun.
  • else if Agar birinchi shart noto'g'ri bo'lsa, sinov uchun yangi shartni belgilash uchun.

Deylik sizning darslaringiz ma’lum bir yosh chegarasini talab qiladi ya’ni ma’lum bir yoshdan boshlab o’quvchilarni qabul qila olasiz. Buning uchun siz har bir o’quvchini yoshini tekshiradigan dastur yozishingiz kerak va yosh chegarasini taxminan 15 yosh qilib olasiz. Ushbu holatda conditionlardan foydalanish muqobil yechim hisoblanadi.

#include <iostream>
 
using namespace std;
 
int main()
{
     int yosh; // foydalanuvchi yoshini saqlash uchun o'zgaruvchi e'lon qilish
 
     cout << "Yoshingizni  kiriting : "; // foydalanuvchiga bizga qanday ma'lumot kerakligini bildirish
 
     cin >> yosh; // foydalanuvchidan qiymatni qabul qilib yosh degan o'zgaruvchiga saqlash
 
     // foydalanuvchi kiritgan qiymatni minimum yosh chegarasi bilan taqqoslash
     if(yosh >= 15){
 
     // taqqoslash qiymati True bo'lganda foydalanuvchiga darslarda qatnasha olishini bildirish
     cout << "Siz darslarda qatnashishingiz mumkin ";
 
     }else {
        // taqqoslash False bo'lganida foydalanuvchiga darslarga qatnasha olmasligini bildirish
        cout << "Afsuski siz bizning darslarimizda qatnasha olmaysiz ";
     }
 
   return 0;
}

Yuqoridagi dasturimiz foydalanuvchidan qiymatni qabul qilib uni minimal yosh chegarasi bilan solishtiradi. Agar foydalanuvchi yoshi talabga to’g’ri kelsa ya’ni kiritgan shartimiz True qiymat qaytarsa if conditioni ichidagi ko’dimiz ishga tushiriladi aks holda esa else conditioni ichidagi ko’dimiz ishga tushiriladi.

Huddi shunday biz ikki sondan qaysi birining qiymati katta ekanligini aniqlaydigan dastur ham yozishimiz mumkin.

#include <iostream>
 
using namespace std;
 
int main()
{
     // birinchi qiymatni saqlash uchun o'zgaruvchi e'lon qilish
     int a;
     // foydalanuvchiga birinchi qiymatni kiritishini bildirish
     cout << "birinchi sonni   kiriting: ";
     // foydalanuvchidan birinchi qiymatni qabul qilib a o'zgaruvchisiga saqlash
     cin >> a;
     // ikkinchi qiymatni saqlash uchun o'zgaruvchi e'lon qilish
     int b;
     // foydalanuvchiga ikkinchi qiymatni kiritishini bildirish
     cout << "ikkinchi sonni kiriting: " ;
     // foydalanuvchidan ikkinchi qiymatni qabul qilib b o'zgaruvchisiga saqlash
     cin >> b;
 
     // birinchi qiymat ikkinchisidan katta ekanligini tekshirish
     if(a > b) {
     // shart True qiymat qaytarganda a o'zgaruvchisidagi sonni ekranga chop qilish
        cout << "qiymati katta bo'lgan son : " << a;
     // shart False qiymat qaytargandagi harakatni belgilash
     }else {
        // b o'zgaruvchisidagi qiymatni ekranga chop qilish
        cout << "qiymati katta bo'lgan son : " << b;
     }
 
   return 0;
}

Yuqoridagi dasturimiz ikki sondan qaysi biri katta ekanligini aniqlaydi. Bunda a va b sonlar o’zaro taqqoslanadi va bizga bor yo’g’i bitta shart yetarli bo’ladi.

Har doim ham shartlar bitta bo’lavermaydi to’g’rimi? Ba’zan natija aniq bo’lishi uchun bir emas bir nechta shartlar belgilash kerak bo’ladi. misol uchun, institutga kirish imtixonlarini tekshiradigan dasturni tassavvur qilib ko’ring. Talabalar to’plagan ballariga qarab ularni davlat granti yoki shartnoma asosida yoki bo’lmasam umuman talabalikka tavsiya etilmaganligi xabarini beradigan dastur tuzib ko’ramiz. Bunda 100 va 90 ball orasida bo’lganlar davlat granti 70 va 80 orasida ball olganlar shartnoma asosida va 70 balldan past ball to’plaganlarga talabalikka tavsia etilmadingiz degan xabarni ekranga chop qilsin.

#include <iostream>
 
using namespace std;
 
int main()
{    // foydalanuvchi kiritgan balni saqlash uchun o'zgaruvchi e'lon qilish
     int bal;
     // foydalanuvchiga qanday ma'lumot kiritilishini bildirish
     cout << "to'plagan balingizni kiriting: ";
     // foydalanuvchidan qiymatni qabul qilib  bal o'zgaruvchisiga saqlash
     cin >> bal;
     // foydalanuvchidan olingan qiymatni tekshirish
     if (bal <=100 && bal >= 90) {
          // shart True qiymat qaytarganda ekranga xabarni chop qilish
          cout << "Siz davlat granti asosida talabalikka tavsiya etildingiz!!!";
     }
     // foydalanuvchidan olingan qiymatni qayta tekshirish
     else if (bal <=89 && bal >= 70 ){
          // shart True qiymat qaytarganda xabarni chop ekranga chop qilish
          cout << "Siz shartnoma asosida talabalikka tavsyia etildingiz!!!";
     }
     // foydalanuvchidan qabul qilingan qiymatni qayta tekshirish
     else if (bal < 70){
          // shart True qiymat qaytarganda xabarni ekranga chop qilish
          cout << "Afsuski siz talabalikka tavsyia etilmadingiz!!!";
     }
     // xatolikni oldini olish
     else {
          // noto'g'ri qiymat kiritilganda xabarni ekranga chop qilish
          cout << "Noto'g'ri bal kiritdingiz...";
     }
 
   return 0;
}

Ushbu dasturimiz foydalanuvchidan qabul qilingan qiymatni mantiqiy va arifmetik operatorlar yordamida tekshiradi. Qabul qilingan qiymat birinchi 100 dan kichik yoki teng va 90 dan katta yoki teng ekanligi tekshiriladi. Agar qiymat 100 dan kichik yoki teng va 90 dan katta yoki teng bo’sa ekranga "Siz davlat granti asosida talabalikka tavsiya etildingiz!!!" degan xabarni chop qiladi. Agar qabul qilingan qiymat 90 dan kichik bo’sa dastur else if blokiga o’tadi va qabul qilingan balni belgilangan shart asosida tekshiradi ya’ni 89 dan kichik yoki teng va 70 dan katta yoki teng. Agar ushbu shart qoniqarli (True) qiymat qaytarsa ekranga "Siz shartnoma asosida talabalikka tavsyia etildingiz!!!" degan xabarni chop qiladi. Agar qiymat 70 dan past boladigan bo’lsa dastur uchinchi else if shartiga o’tadi va kiritilgan qiymatni 70 dan past ekanligini tekshiradi. Shart qoniqarli bo’lsa ekranga "Afsuski siz talabalikka tavsyia etilmadingiz!!!" degan xabarni chop qiladi. Agar foydalanuvchi 100 dan yuqori son kiritsa dastur else blokiga o’tadi va ekranga "Noto'g'ri bal kiritdingiz..." degan xabarni chop qiladi.

Ushbu sahifada

GitHubda tahrirlash