print
(
6 // 5
)
# 1
% - qoldiqli bo’lish amali:
Ikki sonni bo‟linmasi (ushbu amal bo‟lish natijasining faqat qoldiq qismini qaytarib,
butun qismi tashlab yuboriladi)
print
(
6
%
5
)
# 1
** - darajaga ko’tarish (oshirish) amali:
a
b
shaklidagi hisoblashlarda qo‟llaniladi
print
(
6
**
2
)
# 36
Ifodada bir nechta arifmetik amallar ketma-ket kelgan bo‟lsa, ular prioriteti (ustunligi)
bo‟yicha bajariladi. Dastlab, yuqori prioritetga ega bo‟lgan amallar bajariladi.
Amallarning prioriteti kamayish tartibida quyidagi jadvalda ifodalangan:
Amallar
Yo’nalish
**
Chapdan-o‟nga
*, /, //, %
Chapdan-o‟nga
+, -
Chapdan-o‟nga
Misol sifatida quyidagi ifodani qaraymiz:
1 son =
12
//
7
+
2
**
5
*
3
-
4
2
print
(son)
# 93
Bu erda dastlab eng yuqori prioritetga ega bo‟lgan amal – darajaga ko‟tarish amali
bajariladi (2 ** 5 =32). Keyin ko‟paytma (32 * 3 = 96), butun qismli bo‟lish (12 // 7
= 1), qo‟shish (1 + 96 = 97) va ayirish (97 – 4 = 93) amallari bajariladi. Ifoda bajarilishi
natijasida 93 soni konsol ekraniga chiqariladi.
Amallarni qavsga olish orqali ularning bajarilish ketma-ketligini o‟zimiz
xoxlagan
tartibga keltirib olishimiz ham mumkun. Masalan, yuqoridagi
ifodani quyidagicha
qayta yozamiz:
1
son =
12
//
7
+
2
**
5
*
(
3
–
4)
print
(son)
# -31
Natijada konsol ekraniga -31 soni chiqariladi.
Shuni alohida ta`kidlash kerakki, arifmetik amallar butun sonlar uchun qanday tartibda
bajarilsa, suzuvchan nuqtali haqiqiy sonlar uchun ham xuddi shunday bo‟ladi. Agarda
ifodada loaqal bitta haqiqiy son ishtirok qilsa natija haqiqiy turda ifodalanadi.
Yuqoridagi barcha arifmetik amallarni o‟zlashtirish amali (=)
bilan birgalikda
(arifmetik amal va undan keyin “=” belgisi ketma-ket yoziladi) ishlatish mumkin.
Masalan: +=, -=, *=, /=, //=, %=, **=. Bunday hollarda ifodaning o‟ng
tomonidagi
barcha amallar hisoblanib, chiqqan natija chap tomondagi o‟zgaruvchi natijasi bilan
mos arifmetik amal bajariladi va natija yana chap tomondagi o‟zgaruvchiga yuklanadi.
Masalan:
1
son =
2
2
son +=
3
# son = son + 3 amaliga teng kuchli, son=5 bo`ladi
3
print
(son)
# 5
4
5
son -=
1
6
print
(son)
# 4
7
8
son *=
4
9
print
(son)
# 16
10
11 son //=
2
12
print
(son)
# 8
13
14 son **=
2
15
print
(son)
# 64
Yuqoridagi misolda hisoblash natijalari kommentariyalarda ko‟rsatilgan.
Dostları ilə paylaş: