|
O‘zbekiston respublikasi oliy ta’lim, fan va innovatsiyalar vazirligi navoiy davlat pedagogika instituti
|
bet | 58/178 | Sana | 13.05.2024 | Hajmi | 14,73 Mb. | | #230019 |
Bog'liq Darslik 01.05.2023char tipidagi o‘zgaruvchini int tipidagi o‘zgarmas bilan boshlash mumkin, chunki uning qiymati char ma’lumotlar turi oralig‘ida joylashgan. Bu holda o‘zgaruvchiga butun son kiritiladi. Bu belgi kodi bo‘lib, u keyinchalik belgi sifatida ko‘rib chiqiladi. Masalan: char ch=70;
Bunda ch o‘zgaruvchi 70 qiymat qabul qiladi, bu ASCII jadvalidagi A belgisiga mos keladi.
C++ dasturlash tili operatorlari
C++ dasturlash tilidagi amallar. Ifoda ma’lumotlar bo‘yicha amallarni bajarish tartibini belgilaydi, ular operatorlardan (o‘zgarmaslar, o‘zgaruvchilar, funksiyalar), qavslar va amal belgilaridan iborat. Bunda amallar ikki qismga bo‘linadi. Ya’ni, unar va binar amallar. Ularning berilishi 3.7-jadvalda keltirilgan.
2.1.7-jadval
C++ dasturlash tilida amallarning berilishi
Amallar
|
Vazifasi
|
|
Unar amallar
|
++
|
Qiymatni bittaga oshirish
|
--
|
Qiymatni bittaga kamaytirish
|
˜
|
Bitli inkor
|
!
|
Mantiqiy inkor
|
-
|
Arifmetik ayirish
|
+
|
Arifmetik qo‘shish
|
&
|
Manzil olish
|
*
|
Manzilga murojaat
|
(tip)
|
Tipini almashtirish
|
|
Binar (ikkilik) amallar
|
+
|
Qo‘shish
|
-
|
Ayirish
|
*
|
Ko‘paytirish
|
/
|
Bo‘lish
|
%
|
Bo‘linmaning qoldig‘ini topish
|
<<
|
Chapga surish
|
>>
|
O‘nga surish
|
<
|
Kichik
|
>
|
Katta
|
<=
|
Kichik yoki teng
|
>=
|
Katta yoki teng
|
==
|
Teng
|
!=
|
Tegg emas
|
&
|
Razryadli konyunksiya (va)
|
ˆ
|
Razryadli yoki amalining inkori
|
|
|
Razryadli dizyunksiya (yoki)
|
&&
|
Mantiqiy va
|
||
|
Mantiqiy yoki
|
=
|
O‘zlashtirish
|
*=
|
Ko‘paytirib o‘zlashtirish
|
/=
|
Bo‘linmani o‘zlashtirish
|
+=
|
Yig‘indini o‘zlashtirish
|
-=
|
Ayirmani o‘zlashtirish
|
%=
|
Bo‘linmaning qoldig‘ini o‘zlashtirish
|
<<=
|
Chapga surib o‘zlashtirish
|
>>=
|
O‘nga surib o‘zlashtirish
|
&=
|
Razryadli konyunksiyani o‘zlashtirish
|
|=
|
Razryadli dizyunksiyani o‘zlashtirish
|
^=
|
Razryadli yoki amalining inkorini o‘zlashtirish
|
Yuqoridagi jadvalda keltirilgan C++ dasturlash tilining asosiy amallarini quyida batafsilroq ko‘rib chiqamiz.
O‘zlashtirish operatori. O‘zlashtirish operatorining umumiy ko‘rinishi quyidagicha:
o‘zgaruvchi_ nom = qiymat;
Bu yerda qiymat ifoda, o‘zgaruvchi, o‘zgarmas yoki funksiya bo‘lishi mumkin. Bunda o‘zlashtirish operatori quyidagi tartibda ishlaydi. Dastlab, operatorning o‘ng tomonida ko‘rsatilgan ifodani qiymati hisoblab chiqiladi, so‘ngra chap tomondagi o‘zgaruvchiga o‘zlashtiriladi.
Masalan,
b = 3; // b o‘zgaruvchiga uch qiymat beriladi.
a = b; // a o‘zgaruvchiga b ning qiymati beriladi.
x=a+b; // x o‘zgaruvchiga ifoda qiymati beriladi.
i++; // i o‘zgaruvchining qiymati bittaga oshiriladi.
a = a-3; // a o‘zgaruvchining qiymati uchtaga kamaytiriladi.
1-misol. a o‘zgaruvchiga 3 qiymatni, b o‘zgaruvchiga esa 5 qiymat o‘zlashtirilsin. So‘ngra a va b o‘zgaruvchilarning qiymatlari almashtirilsin.
Qo‘yilgan masalani yechish uchun qo‘shimcha c o‘zgaruvchi kerak bo‘ladi (3.7-rasm). U o‘zgaruvchining qiymatini vaqtincha saqlaydi. Keyin, b o‘zgaruvchining qiymati a o‘zgaruvchiga, c o‘zgaruvchining qiymati esa b o‘zgaruvchiga o‘zlashtiriladi.
c=a ; // 1-qadam
с=3; a=b; // 2-qadam
a=5; b=c ; // 3-qadam
b=3;
2.1.7-rasm.
Agar o‘zlashtirish operatorida chap va o‘ng tomonlar har xil turdagi o‘zgaruvchilar bo‘lsa, u holda almashtirish sodir bo‘ladi: o‘zgaruvchining o‘ng tomonidagi qiymati chap tomonidagi o‘zgaruvchining turiga aylantiriladi. Shuni yodda tutish kerakki, bu holda ma’lumotlar qiymati o‘zgarishi mumkin.
C ++ dasturlash tilida bir nechta o‘zgaruvchiga bir xil qiymat berish mumkin. Ushbu amal umumiy holda quyidagicha yozilishi mumkin: name_1 = name_2 = ... = name_N = qiymat;
Masalan:
a = b = c = 3.14159 // a, b va c o‘zgaruvchilarga bir xil 3.14159 qiymat berilganligini anglatadi.
+=, -=, *=, /= amallari tarkibiy o‘zlashtirish amallari deb ataladi. Bunday amallarda o‘ngdagi ifodani baholashda chap tomondagi o‘zgaruvchining qiymati ishlatiladi. Masalan:
x + = p; // x o‘zgaruvchining qiymatini p ga oshirish (x=x+p).
x - = p; // x o‘zgaruvchining qiymatini p ga kamaytirish (x=x-p).
x * = p; // x o‘zgaruvchining qiymatini p ga ko‘paytirish (x=x*p).
x / = p; // x o‘zgaruvchining qiymatini p ga bo‘lish (x=x/p).
|
| |