1-Mavzu. Axborotlarni kompyuter xotirasida tasvirlanishi Reja



Download 1,62 Mb.
Pdf ko'rish
bet43/80
Sana27.06.2022
Hajmi1,62 Mb.
#708480
1   ...   39   40   41   42   43   44   45   46   ...   80
Bog'liq
Maruza matni Dasturlash asoslari

8.5. ?: shart amali
.Agar tekshirilayotgan shart nisbatan sodda bo‘lsa, shart 
amalining ―
?:
‖ ko‘rinishini ishlatish mumkin: 
 
?
1

:
2
>; 
SHart amali if shart operatoriga o‘xshash holda ishlaydi: agar
qiymatidan farqli yoki true bo‘lsa, 1
>, aks holda 2
> bajariladi. Odatda ifodalar 
qiymatlari birorta o‘zgaruvchiga o‘zlashtiriladi. Misol tariqasida ikkita butun son 
maksimumini topish masalasini ko‘raylik. 
if (a >= b) max = a; 
else 
max = b; 
Dasturni ―?:‖ operatori yordamida quyidagicha yozish mumkin: 
max = (a >= b) ? a : b; 
#include  
using namespace std; 
int main() 
{int a, b, c; 
cout << "a va b sonlar maksimumini topish."; 
cout << "\na - qiymatini kiriting: "; cin >> a; 
cout << "\nb - qiymatini kiriting: "; cin >> b; 
c = a > b ? a : b; 
cout<< "\nSonlar maksimumi: " << c; 
return 0;} 
Dasturdagi shart operatori qiymat berish operatorining tarkibiga kirgan bo‘lib, a 
o‘zgaruvchining qiymati b o‘zgaruvchining qiymatidan kattaligi tekshiriladi. Agar shart 
rost bo‘lsa, c o‘zgaruvchisiga a o‘zgaruvchi qiymatini, aks holda b o‘zgaruvchining 
qiymatini o‘zlashtiradi va c o‘zgaruvchisining qiymati chop etiladi.
?: operatorining qiymat qaytarish xossasidan foydalangan holda, uni bevosita cout 
ko‘rsatmasiga yozish orqali ham qo‘yilgan masalani echish mumkin: 
#include  
using namespace std; 
int main() 
{ int a, b; 
cout << "a va b sonlar maksimumini topish.";
cout << "\na - qiymatini kiriting: "; cin >> a; 
cout << "\nb - qiymatini kiriting: "; cin >> b; 
cout << "\nSonlar maksimumi: << (a > b) ? a : b; 
return 0;} 
8.6. switch operatori.
SHart operatorining yana bir ko‘rinishi switch tarmoqlanish 
operatori bo‘lib, uning sintaksisi quyidagicha: 


57 
switch (

case

break; 
case
;
break; 



case
;
break; 
default :


Bu operator quyidagicha amal qiladi: birinchi navbatda qiymati 
hisoblanadi, keyin bu qiymat case kalit so‘zi bilan ajratilgan i
> bilan 
solishtiriladi. Agar ular ustma-ust tushsa, Shu qatordagi ‗:‘ belgisidan boshlab, toki break 
kalit so‘zigacha bo‘lgan i
> bajariladi va boshqaruv tarmoqlanuvchi 
operatordan keyin joylashgan operatorga o‘tadi. Agar birorta ham ifoda
i
> bilan mos kelmasa, qurilmaning default qismidagi n+1

bajariladi. Shuni qayd etish kerakki, qurilmada default kalit so‘zi faqat bir marta uchrashi 
mumkin.
Namuna uchun, char turidagi belgi o‘zgaruvchisi orqali tekshirish jarayoni 
bajarilayotgan quyidagi namuna ko‘rilsin: 
switch (belgi) 

case 'A': 
cout << "Oradagi masofa 10m"; 
break; 
case 'B': 
cout << "Oradagi masofa 8m"; 
break; 
case 'C': 
cout << "Oradagi masofa 6m"; 
break; 
case 'D': 
cout << "Oradagi masofa 3m"; 
break; 
case 'F': 
cout << "Oradagi masofa 0m"; 
break; 
default: 
cout << "Masofa belgisi noto‘g‘ri kiritilgan."; 


58 

Ushbu misolda tekshirish uchun o‘zgaruvchi kelmoqda. O‘zgaruvchining turi belgi 
bo‘lgani uchun har bir qiymat case kalit so‘zidan keyin kelgan belgi bilan solishtirilgan.
Misol uchun, kirish oqimidan ―
Jarayon davom etilsinmi?
‖ so‘roviga foydalanuvchi 
tomonidan javob olinadi. Agar ijobiy javob olinsa, ekranga ―
Jarayon davom etadi!
‖ xabari 
chop etiladi va dastur o‘z ishini tarmoqlanuvchi operatordan keyingi operatorlarni bajarish 
bilan davom ettiradi, aks holda ―
Jarayon tugadi!
‖ javobi beriladi va dastur o‘z ishini 
tugatadi. Bunda, foydalanuvchining 'y' yoki 'Y' javoblari jarayonni davom ettirishni 
bildiradi, boshqa belgilar esa jarayonni tugatishni anglatadi. 
#include  
using namespace std; 
int main() 

char Javob=' '; 
cout << "Jarayon davom etsinmi? (‗y‘,‘Y‘): "; 
cin >> Javob; 
switch(Javob) 

case ‗Y‘: 
case ‗y‘: 
cout << ‖Jarayon davom etadi!\n‖; 
break; 
default: 
cout << ‖Jarayon tugadi!\n‖; 
return 0; 

// jarayon 
return 0; 

Umuman olganda, tarmoqlanuvchi operatorda 

Download 1,62 Mb.

Do'stlaringiz bilan baham:
1   ...   39   40   41   42   43   44   45   46   ...   80




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2025
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish