-§. C++ dasturlash tilida tarmoqlanuvchi jarayonlarni dasturlash




Download 14,73 Mb.
bet61/178
Sana13.05.2024
Hajmi14,73 Mb.
#230019
1   ...   57   58   59   60   61   62   63   64   ...   178
Bog'liq
Darslik 01.05.2023

2.2-§. C++ dasturlash tilida tarmoqlanuvchi jarayonlarni dasturlash


C++ dasturlash tilida o‘tish operatori. Ko‘pgina misol va masalalarni dasturlashda hisob-kitoblar tartibi ma’lum shartlarga, masalan, dastlabki ma’lumotlarga yoki dasturning oldingi bosqichlarida olingan oraliq natijalarga bog‘liq bo‘ladi. Bunda hisob-kitoblarni tartibga solish uchun, shartga qarab, C ++ dasturlash tilining if shart operatoridan foydalaniladi. Ushbu operatorning umumiy ko‘rinishi quyidagicha yoziladi:
if (shart) 1_operator; else 2_operator;
Bu yerda shart mantiqiy (yoki butun sonli) ifoda, o‘zgaruvchi yoki o‘zgarmas bo‘lib, 1_operator va 2_operator esa C ++ dasturlash tilining ixtiyoriy operatori bo‘lishi mumkin.
if operatori quyidagi tartibda ishlaydi. Birinchi, qavs ichidagi shart tekshiriladi. Agar u nolga teng bo‘lmasa, yoki rost (true) qiymat qabul qilsa, 1_operator bajariladi. Aksincha, agar shart nolga teng bo‘lsa, yoki yolg‘on (false) qiymat qabul qilsa 2_operator bajariladi. if shart operatori qo‘llanilgan algoritm tasviri 2.2.1-rasmga tasvirlangan.
Masalan, x va y o‘zgaruvchilarning qiymatlarini taqqoslash uchun quyidagi dastur kodi yoziladi:
cin>>x; cin>>y;
if (a==b) cout<<" x o‘zgaruvchi y ga teng " ;
else cout<<" x o‘zgaruvchi y ga teng emas " ;
Eslatma: == tenglik belgisi va = o‘zlashtirish operatorini aralashtirmang. Masalan, if (z = 0) k = 1; yozuvda sintaksis xatosi yo‘q. Bunda z = 0 o‘zlashtirish amali natijasi hosil qilanadi va uning qiymati esa shart sifatida tekshiriladi. Ushbu dastur kodida k = 1 operator hech qachon bajarilmaydi, chunki z o‘zgaruvchining qiymati har doim nolga teng, ya’ni yolg‘on (false) bo‘ladi. Bunda to‘g‘ri yozuv esa quyidagicha yoziladi: if (z == 0) k = 1;

2.2.1-rasm. if shart operatori blok sxemasi.
Agar berilgan masalada shartning qiymatiga qarab bir nechta operator bajarilishi kerak bo‘lsa, operatorlar figurali qavslar { } ichiga yozilishi lozim. Bunday holda, kompilyator operatorlar guruhini bitta ifoda sifatida ko‘rib chiqadi. Masalan:
if (shart)
{ 1_operator; 2_operator; ... }
else
{ 3_operator; 4_operator; ... }
Shart operatorida else bo‘limidan foydalanish talab etilmasa, ya’ni shart yolg‘on bo‘lganda hech qanday operator bajarilmasa, u holda else bo‘limini tushirib qoldirish mumkin. Masalan:
if (shart) operator;
yoki
if (shart)
{ 1_operator; 2_operator; ... }
Ushbu “qisqartirilgan” shakldagi shartli operatorning ishlash algoritmi quyidagicha: operator (operatorlar guruhi) shartli ifoda qiymatiga qarab bajariladi yoki o‘tkazib yuboriladi. Ushbu shartli jarayonni bajarish algoritmi 2.2.2-rasmda tasvirlangan.

2.2.2-rasm. Qisqa shart operatori blok sxemasi.
else bo‘limi ishtirokisiz shart operatoridan foydalanishning dastur kodi quyidagicha:
cin>>a ; cin>>b;
c=0;
// c o‘zgaruvchining qiymati faqat a va b teng bo‘lmaganda o‘zgaradi.
if (a!=b) c=a+b;
cout<<"c="<
Shart operatorlari o‘zaro ichma-ich holda qo‘llanilishi ham mumkin. Ichma-ich joylashgan shart operatorlarining ishlash algoritmi quyidagicha (bunda else bo‘limi har doim eng yaqin if ga tegishli bo‘ladi):
if (1_shart) if (2_shart) 1_operator; else 2_ operator;
Bu yerda 2_operator har doim 2_shart ga aloqador bo‘ladi. Quyidagi dastur kodida esa 1_shart ga aloqador bo‘ladi:
if (1_shart) { if (2_shart) 1_operator; }
else 2_ operator;
Yuqorida bayon etilgan fikrlarni tekshirish uchun C++ dasturlash tilining shartli operatorlardan foydalangan holda bir nechta misollarni ko‘rib chiqamiz.

Download 14,73 Mb.
1   ...   57   58   59   60   61   62   63   64   ...   178




Download 14,73 Mb.

Bosh sahifa
Aloqalar

    Bosh sahifa



-§. C++ dasturlash tilida tarmoqlanuvchi jarayonlarni dasturlash

Download 14,73 Mb.