Buxoro davlat universiteti




Download 1.58 Mb.
bet16/27
Sana15.06.2021
Hajmi1.58 Mb.
#15043
1   ...   12   13   14   15   16   17   18   19   ...   27
C# da arifmetik amallar. Ko'p programmalar ijro davomida arifmetik amallarni bajaradi. C# dagi amallar quyidagi jadvalda berilgan. Ular ikkita operand bilan ishlatiladi. C# dagi amal arifmetik operator algebraik ifoda C# dagi ifodasi

Qo'shish + h+19 h+19

Ayirish - f-u f-u

Ko'paytirish * sl s*l

Bo'lish / v/d, vod v/d

Modul olish % k mod 4 k%4

Bularning ba'zi birlarinig xususiyatlarini ko'rib chiqaylik. Butun sonli bo'lishda, ya’ni bo'luvchi ham, bo'linuvchi ham butun son bo'lganda, javob butun son bo'ladi. Javob yaxlitlanmaydi, kasr qismi tashlanib yuborilib,butun qismining o'zi qoladi.

Modul operatori (%) butun songa bo'lishdan kelib chiqadigan qoldiqni beradi. x%y ifodasi x ni y ga bo'lgandan keyin chiqadigan qoldiqni beradi. Demak, 7%4 bizga 3 javobini beradi. % operatori faqat butun sonlar bilan ishlaydi. Vergulli (real) sonlar bilan ishlash uchun "math.h" kutubxonasidagi f mod funksiyasini qo’llash kerak.C# da qavslarning ma'nosi xuddi algebradagidekdir. Undan tashqari boshqa boshqa algebraik ifodalarning ketma-ketligi ham odatdagidek. Ko'paytirish, bo'lish va modul olish operatorlari ijro ko'radi. Agar bir necha operator ketma-ket kelsa, ular chapdan o'nga qarab ishlanadi. Bu operatorlardan keyin esa qo'shish va ayirish ijro etiladi.

MANTIQIY SOLISHTIRISH OPERATORLARI

C# bir necha solishtirish operatorlariga ega.

Algebraik ifoda C# dagi operator C# dagi ifoda Algebraik ma'nosi:

tenglik guruhi (==) x==y x tengdir y ga;

teng emas (!=) x!=y x teng emas y ga;

solishtirish guruhi (>) x>y x katta y dan (<) < x

katta-teng (>=) x>=y x katta yoki teng y ga;

kichik-teng (<= ) x<=y x kichik yoki teng y ga;

==, !=, >= va <= operatorlarni yozganda oraga bo'sh joy qo'yib ketish sintaksis xatodir. Ya’ni kompilyator dasturdagi xatoni ko'rsatib beradi va uni tuzatilishini talab qiladi. Ushbu ikki belgili operatorlarning belgilarining joyini almashtirish, masalan <= ni =< qilib yozish ko'p hollarda sintaksis xatolarga olib keladi. Gohida esa != ni =! deb yozganda sintaksis xato vujudga ham, bu mantiqiy xato bo'ladi. Mantiqiy xatolarni kompilyator topa olmaydi. Lekin ular programma ishlash mantig'ini o'zgartirib yuboradi. Bu kabi xatolarni topish esa ancha mashaqqatli ishdir (! operatori mantiqiy inkordir). Yana boshqa xatolardan biri tenglik operatori (==) va tenglashtirish, qiymat berish operatorlarini (=) bir-biri bilan almashtirib qo'yishdir. Bu ham juda ayanchli oqibatlarga olib keladi, chunki ushbu xato aksariyat hollarda mantiq xatolariga olib keladi.

Boshqaruv ifodalari. Bu bo'limda biz strukturali dasturlashning asosiy prinsip va qismlarini ko'rib chiqamiz. Ma'lum bir dasturni yozish uchun belgilangan qadamlarni bosib o'tish kerak. Masala aniqlangandan so'ng uni yechish uchun mo'ljallangan algoritm tuziladi. Keyin esa psevdokod yoziladi. Psevdokod algoritmda bajariladigan qadamlarni ko'rsatadi. Bunda faqat bajariladigan ifodalar ko'rib chiqiladi. Psevdokodda o'zgaruvchi e'lonlari yoki boshqa ma'lum bir dasturlash tiliga mansub bo'lgan yordamchi amallar bo'lmaydi. Psevdokodni yozish dasturlashni ancha osonlashtiradi, algoritm mantig'ini tushunishga va uni rivojlanritishga katta yordam beradi. Misol uchun bir dasturning rejasi va psevdokodi 3-4 oy yozilgan bo'lsa va yuqori darajada detallashtirilgan bo'lsa, ushbu dasturning C# yoki boshqa tildagi kodini yozish 2-3 hafta vaqt oladi xolos. Bu yozilgan programmada xato ancha kam bo'ladi, uni keyinchalik takomillashtirish arzonga tushadi. Hozirgi paytda dastur o'zgarishi favqulotda hodisa emas, balki zamon talabidir.

Dastur ijro strukturalari. Asosan dasturdagi ifodalar ketma-ket, navbatiga ko'ra ijro etiladi. Gohida bir shart bajarilishiga ko'ra, ijro boshqa bir ifodaga o'tadi. Navbatdagi emas, dasturning boshqa yerida joylashgan ifoda bajariladi. Ya’ni sakrash yoki ijro ko'chishi vujudga keladi. 60-chi yillarga kelib, dasturlardagi ko'pchilik xatolar aynan shu ijro ko'chishlarining rejasiz ishlatilishidan kelib chiqishi ma'lum bo'ldi. Bunda eng katta aybdor deb bu qo'shishlarni amalga oshiruvchi goto (...ga bor) ifodasi belgilandi. goto dastur ijrosini deyarli istalgan yerga ko'chirib yuborishi mumkin. Bu esa programmani o'qishni va uning strukturasini murakkablashtirib yuboradi. Shu sababli "strukturali dasturlash" atamasi "goto ni yo'q qilish" bilan tenglashtirilardi. Shuni aytib o'tish kerakki, goto kabi shartsiz sakrash amallarini bajaruvchi ifodalar boshqa dasturlash tillarida ham bor. Tadqiqotlar shuni ko'rsatdiki, istalgan programma goto siz yozilishi mumkin ekan. goto siz yozish uslubi strukturali dasturlash deb nom oldi va bunday dastur yozish metodi katta iqtisodiy samara beradi. Strukturali dasturlash asosi shundan iboratki, har bir programma faqatgina uch xil boshqaruv strukturalaridan iboratdir. Bular ifodalarni ketma-ket ijro etish strukturasi (sequence structure), tanlash strukturasi (selection structure) va amalni qayta ijro etish strukturasidir (repetition structure). Ifodalarni ketma-ket ijro etish strukturasi C# tomonidan ta'minlanadi. Normal sharoitda C# ifodalari dasturdagi navbatiga ko'ra bajariladi. Tanlash buyruqlari uchtadir. Bular if, if/else va switch dir. Qayta ijro etish buyruqlari guruhiga ham uchta a'zo bor, bular while, do/while va for. Bularni har birini keyinroq tahlil qilib chiqamiz.

Yuqoridagi buyruqlar nomlari C# dasturlash tilining maxsus so'zlaridir. Dasturchi bu so'zlarni o'zgaruvchi yoki funksiyalar nomi sifatida qo'llashi ta'qiqlanadi. Quyida C# ning ajratilgan so'zlarining to'liq ro'yxati berilgan.

C# va C ga tegishli:



Download 1.58 Mb.
1   ...   12   13   14   15   16   17   18   19   ...   27




Download 1.58 Mb.