Algoritmik tillar va dasturlash. Ma’ruza mashg’ulotlari uchun o’quv qo’llanma. X. E. Xolmirzayev, M. N. Ikromova, M. M. Bahromova Annotatsiya


Operatsiya(amal belgilari) va ifodalar



Yüklə 2,87 Mb.
səhifə12/56
tarix19.12.2023
ölçüsü2,87 Mb.
#184841
1   ...   8   9   10   11   12   13   14   15   ...   56
O`quv qo`llanma11 (2)

4.2. Operatsiya(amal belgilari) va ifodalar
Operatsiya yoki amal belgilari - bu operandlar ustida belgilangan tartibda biror amalni bajaruvchi belgi yoki belgilar ketma ketligidir.
Ifoda – ma’lum bir hisoblash qoidasiga asosan amal belgilari bilan bog‘langan operandlardir. Ifodada amal belgilari yordamida bog‘langan operandlar ishtirok etadi. Operandlar o‘zgarmas, o‘zgaruvchi yoki funksiya bo‘lishi mumkin.
Masalan, a + 2. Bu operandlar + belgisi bilan bog‘langan ifodadir, a va 2 esa operand.
C# ning amal belgilari quyidagi 4. 1 jadvalda keltirilgan.
4.1- jadval.
C# ning amal belgilari

Kategoriyasi

Amal belgisi

Nomlanishi

Birinchi daraja

x()

Funksiya, uslub yoki delegatni chaqirish

x[]

Biror to‘plam, massiv yoki majmua elementiga murojaat

x++

Postfiksli inkrement

x--

Postfiksli dekrement

new

Xotiradan joy belgilash

typeof

Tipni aniqlashtirish

checked

Tekshiriluvchi kod

unchecked

Tekshirilmaydigan kod

Unar

+

Unar qo‘shish amali

-

Unar ayirish amali

!

Mantiqiy ayirish(emas)

~

Razryad bo‘yicha ayirish

++x

Prefiksli inkrement

--x

Prefiksli dekrement

(tip)x

Tipni o‘zgartirish

Multiplikativ

*

Ko‘paytirish

/

Bo‘lish

%

Qoldiqli bo‘lish

Additiv

+

Qo‘shish

-

Ayirish

Surish

<<

Chapga surish

>>

O‘ngga surish

Solishtirish(taqqoslash) va tipni tekshirish

<

Kichik

>

Katta

<=

Kichik yoki teng

>=

Katta yoki teng

is

Tegishlilik

as

Keltirish, tenglash

Tenglikni tekshirish

==

Teng

!=

Teng emas

Mantiqiy razryadli

&

Razryadli kon’yunksiya (VA)



Razryadli istisno etuvchi YOKI amali

|

Razryadli diz’yunksiya (YOKI)

Mantiqiy

&&

Mantiqiy VA

||

Mantiqiy YOKI

Shartli

?:

Shartli operatsiya

O‘zlashtirish

=

O‘zlashtirish

*=

Ko‘paytirib o‘zlashtirish

/=

Bo‘lib o‘zlashtirish

%=

qoldiqli bo‘lib o‘zlashtirish

+=

Qo‘shib o‘zlashtirish

-=

Ayirib o‘zlashtirish

<<=

chapga surib o‘zlashtirish

>>=

o‘ngga surib o‘zlashtirish

&=

razryadli VA amalini bajarib o‘zlashtirish



razryadli istisno etuvchi YOKI amalini bajarib o‘zlashtirish

|=

razryadli YOKI amalini bajarib o‘zlashtirish

4.1 – jadvalda keltirilgan amal belgilari - ifodalarda bajarilish ketma-ketligi kamayish tartibida joylashtirilgan, ya’ni avval yuqorida joylashgan kategoriyadagi amallar bajariladi.


Agar ifodada bir nechta bitta kategoriyaga mansub operatsiyalar ketma-ket joylashgan bo‘lsa, o‘zlashtirish va shartli amallar o‘ngdan chapga qarab bajariladi, qolgan amallar esa chapdan o‘ngga qarab bajariladi. Amallarning bajarilish ketma-ketligini buzish uchun oddiy qavslardan foydalaniladi.
4.3. C# da asosiy operatsiyalar. Inkrement va dekrement
Inkrement va dekrement amallari operandni 1 qiymatga oshirish va kamaytirish uchun xizmat qiladi. Ularning ikki xil formasi bor bo‘lib, birinchisi prefiksli forma: bunda amal belgisi operandning old tarafida joylashadi, ikkinchisi postfiksli forma bo‘lib: bunda amal belgisi operanddan keyin joylashadi. Prefiksli formada avval ta’kidlab o‘tganimizdek, birinchi navbatda operand qiymati 1 birlikka oshiriladi(kamaytiriladi), so‘ngra operandning yangi hosil bo‘lgan qiymatidan ifodada foydalaniladi. Postfiksli formada esa operand shu jarayongacha bo‘lgan qiymati ifodada hisoblanib bo‘lingandan so‘ng bir birlikka orttiriladi (kamaytiriladi).
Standart inkrement va dekrement amallaridan butun, belgili va haqiqiy tiplarda foydalanish mumkin.
new operatsiyasi
new operatsiyasi yangi obyekt yaratish uchun xizmat qiladi. Sintaksisi:
new tip ( [ argumentlar ] )
Misol:
object z = new object();
int i = new int(); // bu xolat int i = 0; ga teng kuchli.
new operatsiyasi bajaralish jarayonida birinchi navbatda kerakli hajmdagi joy xotiradan ajratiladi, so‘ngra konstruktor metodi orqali kerakli ob’ekt initsializatsiya qilinadi. Qiymatli tiplar new yordamida e’lon qilinganda o‘zgaruvchiga boshlang‘ich qiymat sifatida 0 o‘zlashtiriladi.
Unar ayirish amali
Unar ayirish amali (-) sonli tipdagi operandning ishorasini uning aksiga aylantirish uchun xizmat qiladi.
Mantiqiy ayirish (!) amali - mantiqiy bool tipli kattaliklar uchun mo‘ljallangan. Mantiqiy ayirish amali operand qiymatini uning aksiga o‘zgartirish uchun xizmat qiladi. Ya’ni mantiqiy ayirish amali qo‘llanganda operandning qiymati true bo‘lsa, uning qiymati false ga almshadi, agar operandning qiymati false bo‘lsa, uning qiymati true ga almashadi.
Razryadli ayirish ( ~ ) amali – ko‘pincha bitli ayirish amali deb ham yuritiladi. Razryadli ayirish amali int, uint, long yoki ulong tipli operandning ikkilik kodidagi har bir razryadini inversiya qilish uchun qo‘llaniladi. Ya’ni ushbu amalni qo‘lllash natijasida operandning ikkilik kodidagi 1 ga teng bo‘lgan razryadlari 0 ga, 0 ga teng bo‘lgan razryadlari esa 1 ga almashadi. Masalan:

int v = 153; // 153 ning ikkilik kodidagi qiymati 10011001 ga teng


int n = ~v; // natija: n ning qiymati 102 ga, uning ikkilik koddagi qiymati esa 01100110 ga teng bo‘ladi.
Unar amallarda ishtirok etuvchi operand bitta bo‘ladi.
* Unar qo‘shish amali qo‘llanganda operandning arifmetik qiymati o‘zgarmaydi, lekin agar uning tipi uchun arifmetik operatsiya aniqlanmagan bo‘lsa uning tipi o‘zgarishi mumkin.

Yüklə 2,87 Mb.

Dostları ilə paylaş:
1   ...   8   9   10   11   12   13   14   15   ...   56




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin