23-mavzu Dastur bajarilish yo`lini o`zgartirish, tarmoqlanish. If operatori. Shartli operatorni yozilishi. To`liq va qisqa shakli. Tarmoqlanishning taxlangan tuzilmasi



Download 14,35 Kb.
Sana05.11.2022
Hajmi14,35 Kb.
#860988
Bog'liq
23-mavzu Dastur bajarilish yo`lini o`zgartirish


23-mavzu Dastur bajarilish yo`lini o`zgartirish, tarmoqlanish. IF operatori. Shartli operatorni yozilishi. To`liq va qisqa shakli. Tarmoqlanishning taxlangan tuzilmasi

Reja:
1. Shart operatorlari


2. if shart operatorining bajarilishi

Tarmoqlanishning taxlangan tuzilmasi Shart operatorlari


Tarmoqlanuvchi algoritmlarda tarmoqlanishni amalga oshirish uchun shartli operatordan foydalaniladi.


if operatori qandaydir shartni rostlikka tekshirish natijasiga ko‘ra dasturda tarmoqlanishni amalga oshiradi:
if () ;
Bu yerda har qanday ifoda bo‘lishi mumkin, odatda, u taqqoslash amali bo‘ladi. Agar shart 0 qiymatidan farqli yoki rost (true) bo‘lsa, bajariladi, aks holda, ya’ni shart 0 yoki yolg‘on (false) bo‘lsa, hech qanday amal bajarilmaydi va boshqaruv if operatoridan keyingi operatorga o‘tadi (agar u mavjud bo‘lsa). Bunday konstruksiya bir tomonlama tanlov deb ham ataladi.
Agar dastur bajarilishi jarayonida shartning natijasiga qarab u yoki bu amalni bajarish kerak bo‘lsa, shart operatorining ikki tomonlama tanlovli ko‘rinishidan foydalaniladi. Shart operatorining ikki tomonlama tanlovli ko‘rinishi - if...else quyidagicha sintaksisga ega:
if
()
<
operator1>;
else <
operator2>;
Bu yerda 0 qiymatidan farqli yoki true bo‘lsa,
,
aks holda
bajariladi.

if...else


C++ tilining qurilmalari operatorlarni blok ko‘rinishida tashkil qilishga imkon beradi. Blok – ‘{‘ va ‘}’ belgilari oralig‘iga olingan operatorlar ketma-ketligi bo‘lib, u kompilyator tomonidan yaxlit bir operator deb qabul qilinadi. Blok ichida e’lon operatorlari ham bo‘lishi mumkin va ularda e’lon qilingan o‘zgaruvchilar faqat shu blok ichida ko‘rinadi (amal qiladi), blokdan tashqarida ko‘rinmaydi. Blokdan keyin ‘;’ belgisi qo‘yilmasligi mumkin, lekin blok ichidagi har bir ifoda ‘;’ belgisi bilan yakunlanishi shart.
{ifoda_1; ifoda_2; ...ifoda_n;}

Misol tariqasida diskriminantni hisoblash usuli yordamida ax+bx+c=0 ko‘rinishidagi kvadrat tenglama ildizlarini topish masalasini ko‘raylik:


#include
int main()
{
float a, b, c;
float D, x1, x2;
cout << "ax^2+bx+c=0 tenglama ildizini topish.";
cout << "\n a - koeffitsiyentini kiriting: ";
cin >> a;
cout << "\n b - koeffitsiyentini kiriting: ";
cin >> b;
cout << "\n c - koeffitsiyentini kiriting: ";
cin >> c;
D = b * b – 4 * a * c;
if (D < 0)
{
cout << "Tenglama haqiqiy ildizga ega emas!";
return 0;
}
if (D == 0)
{
cout << "Tenglama yagona ildizga ega: ";
x1 = -b / (2 * a);
cout << "\nx= " << x1;
}
else
{
cout << "Tenglama ikkita ildizga ega: ";
x1 = (-b + sqrt(D)) / (2 * a);
x2 = (-b - sqrt(D)) / (2 * a);
cout << "\nx1= " << x1;
cout << "\nx2= " << x2;
}
return 0;
}
Izoh: Dastur bajarilganda, birinchi navbatda, tenglama koeffitsiyentlari - a, b, c o‘zgaruvchilar qiymatlari kiritiladi, keyin diskriminant D o‘zgaruvchi qiymati hisoblanadi. Keyin D qiymatining manfiy ekanligi tekshiriladi. Agar shart o‘rinli bo‘lsa, yaxlit operator sifatida keluvchi ‘{‘ va ‘}’ belgilari orasidagi operatorlar bajariladi va ekranga “Tenglama haqiqiy ildizga ega emas!” xabari chiqadi va dastur o‘z ishini tugatadi (“return 0;” operatorini bajarish orqali). Diskriminant noldan kichik bo‘lmasa, navbatdagi shart operatori uni nolga tengligini tekshiradi. Agar shart o‘rinli bo‘lsa, keyingi qatorlardagi operatorlar bloki bajariladi – ekranga “Tenglama yagona ildizga ega:” xabari, x1 hamda o‘zgaruvchi qiymati chop etiladi, aks holda, ya’ni diskriminantning qiymati noldan katta holati uchun else kalit so‘zidan keyingi operatorlar bloki bajariladi va ekranga “Tenglama ikkita ildizga ega:” xabari hamda x1 va x2 o‘zgaruvchilar qiymatlari chop etiladi.
Shu bilan shart operatoridan chiqiladi va asosiy funksiyaning return ko‘rsatmasini bajarish orqali dastur o‘z ishini tugatadi. O‘z navbatida, > va ham shartli operator bo‘lishi mumkin. Ifodadagi har bir else kalit so‘zi, oldindagi eng yaqin if kalit so‘ziga tegishli hisoblanadi (xuddi ochiluvchi va yopiluvchi qavslardek). Buni inobatga olmaslik mazmunan xatoliklarga olib kelishi mumkin. ?: shart amali. Agar tekshirilayotgan shart nisbatan sodda bo‘lsa, shart amalining “Shart amali if shart operatoriga o‘xshash holda ishlaydi: agar 0 qiymatidan farqli yoki true bo‘lsa, 1>, aks holda 2> bajariladi.

Download 14,35 Kb.

Do'stlaringiz bilan baham:




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
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