:::=
Bu yerda 2 ta belgidan iborat bo’lgan asosiy belgi “:=” belgisining ung tomonidagi ifoda hisoblanib, belgining chap tomonidagi o’zgaruvchi tomonidan o’zlashtiriladi.
Shunday qilib, o’zlashtirish operatori mustaqil mantiqiy tugallangan hisoblash jarayonini ifodalaydi: o’zlashtirish operatori bajarilishi natijasida ma'lum o’zgaruvchilar keyingi boskichlarda ishlatilishi mumkin bo’lgan joriy qiymatni kabo’l qiladi.
Turli toifadagi ifodalar aslida ko’p o’xshashliklarga ega bo’lib, ularning barchasi operandlardan, amal beliglaridan, amallarni ixtiyeriy ketma-ketligini bajarish imkoniyatlarini beruvchi qavslardan tashkil topadi. Bunda operatorlar uch turli:o’zgarmas o’zgaruvchan va hisoblanadigan bo’ladilar
O’zgarmas operand dastur tuzilayetganda ma'lum bo’lgan va bajarilishi davomida o’zgarmas bo’lgan qiymat bo’lib, boshqacha aytganda o’zgarmas operand - bu biror toifadagi konstantadir.
O’zgaruvchi operand qiymati dastur bajarilishi davomida aniqlanadi va o’zgarishi mumkin ammo bu operand qatnashgan ifodaning hisoblanishidan oldin uning qiymati aniqlangan bo’lishi lozim. Sintaksis jihatdan o’zgaruvchi - qiymatini o’zlashtiradigan, shu o’zgaruvchi nomi sifatida qullaniladigan indentifiqatordir.
Hisoblangan operand qiymati hatto hisoblashdan avval ham aniqlanmagan bo’lib ifoda hisoblanishi jarayonida aniqlanadi. Operandlar sifatida paskal funktsiyalarni kuzatish mumkin.
Arifmetik o’zlashtirish operatori o’zgaruvchiga arifmetik toifadagi, ya'ni REAL yoki INTEGER toifadagi qiymatni berish uchun xizmat qiladi. Bunday operatorlarning ung tarafida arifmetik ifoda ya'ni shu toifadagi qiymatni hisoblash qoidasini beruvchi ifoda bo’lishi kerak.
Bunday operatorining ung tarafidagi arifmetik ifoda, ya'ni shu toifalardagi qiymatlarni hisoblash qoidasini beruvchi ifoda bo’lishi kerak
Agar o’zlashtirish operatorining chap qismidagi o’zgaruvchi real toifaga ega bo’lsa, arifmetik ifoda REAL toifadagi, hamda INTEGER toifadagi qiymat ham bo’lishi mumkin
Asosiy operatorlar sifatida o’zgarmas, o’zgaruvchilar va f-yalar ishlatiladi
Arifmetik ifodaga quyidagi misollarni keltirish mumkin
5*6+3*3 ((5*6)+(3*3)=396)
9 div 4/2 ((9 div 4)/2=1.0)
40/5/10 ((40/5)/10=0.8)
-sqrt(sqr(3)+32/2) (-sqrt(sqr(3)+(32/2))=-5.0)
((2+4)/10+2/4)*2 ((((2+4)/10)+(2/4))*2=2.2)
Arifmetik o’zlashtirish operatoriga misol (bunda x, a, b, c, r–REAL toifadagi o’zgaruvchilar , pi=3.14159 bo’lgan haqiqiy sonning nomi):
x:=0 ( x o’zgaruvchiga nolga teng bo’lgan qiymat berilyapti);
i:=i+1 ( i ning joriy qiymati bir birlikka orttirilyapti);
с:=sqrt(a*a+b*b) (a va b katetlar gipotenuzasi uzunligi hisoblanayapti):
x:=2*pi*r (r radiusli aylana uzunligi x hisoblanyapti).
Quyidagi yozuvlar sintaksis buyicha o’zlashtirish operatori emas yoki Paskalda bunday yozib bo’lmaydi:
3:=i+2 (chap tomonda konstanta qullanilishi mumkin emas);
х=2*pi*r (“=” belgi o’zlashtirish operatorining belgisi emas);
i=5/4 (butun sonli o’zgaruvchiga haqiqiy qiymat berilmaydi);
х:=a*b/2 (ketma-ket ikki amal belgisi belgisini yozish mumkin emas).
Agar o’zlashtirish operatorining chap tomoniga BOOLEAN toifadagi o’zgaruvchi ko’rsatilgan bo’lsa, operatorning ung tarafiga mantiqiy qiymat (TRUE yoki FALSE )ni hisoblovchi mantiqiy ifoda berilishi kerak. Mantiqiy ifodada konstanta, o’zgaruvchi va funktsiyalar ishlatiladi, biroq mantiqiy amalni har bir operandi BOOLEAN toifada bo’lishi kerak. Mantiqiy ifodada mantiqiy amal operandi bo’lib xizmat qiladi. Bu tushunchani oddiylashtiraylik :
Do'stlaringiz bilan baham: |