|
Alisher ismailov shakirovich algoritmlash va dasturlash asoslari (1-qism)
|
bet | 22/33 | Sana | 21.02.2024 | Hajmi | 290,29 Kb. | | #160200 |
Bog'liq Algoritmlash va dasturlash asoslari-fayllar.orgOperator
|
Nomi
|
Misol
|
Bunday yozilishi ham mumkin
|
+=
|
Qo‘shish operatori
|
Y += 7
|
Y = Y + 8
|
-=
|
Ayirish operatori
|
Y -= 7
|
Y = Y - 8
|
*=
|
Ko‘paytirish operatori
|
Y *= 7
|
Y = Y * 8
|
/=
|
Bo‘lish operatori
|
Y /= 7
|
Y = Y / 8
|
%=
|
Modul operatori
|
Y %= 7
|
Y = Y % 8
|
Kengaytirilgan tayinlash operatori ifodadagi boshqa operatorlar baholangandan keyin oxiri bajariladi.
Masalan,
x /= 4 + 5.5 * 1.5;
bunday yozish ham bir xil natija beradi:
x = x / (4 + 5.5 * 1.5);
Increment (O‘stirish) va decrement (kamaytirish) operatorlari
Increment(O‘stirish) (++) va decrement (kamaytirish) (--) operatorlari o‘zgaruvchi qiymatini 1 ga oshirish va kamaytirish uchun qo‘llaniladi. Bu operatorlar foydali hisoblanadi chunki ko‘p dasturlash vazifalarida odatda qiymatni 1 ga oshirish yoki kamaytirish kerak bo‘ladi. Masalan, quyidagi kod i o‘zgaruvchi qiymatini 1 ga oshiradi va j o‘zgaruvchi qiymatini 1 ga kamaytiradi.
int i = 3, j = 3;
i++; // i o`zgaruvchisi 4 qiymat hosil qiladi
j--; // j o`zgaruvchisi 2 qiyat hosil qiladi
i++, i plyus plyus va i--, i minus minus sifatida talaffuz qilinadi. Bu operatorlar postfiksning ortishi (postincrement) va postfiksning kamayishi (postdecrement) deb ham nomlanadi, chunki ++ va -- operatorlari oʻzgaruvchidan keyin qoʻyiladi. Bu operatorlarni oʻzgaruvchidan oldin ham qoʻyish mumkin.
++i, i oʻzgaruvchisi qiymatini 1 ga oshiradi va --j, j oʻzgaruvchisi qiymatini 1 ga kamaytiradi. Bu operatorlar prefiks ortishi (preincrement) va prefiksning kamayishi (predecrement) deb nomlanadi. Koʻrib turganingizdek, i++ va ++i yoki i-- va --i ning ta’siri oldingi misollarda bir xil. Biroq, iboralarda qoʻllanganda ularning ta’siri farq qiladi.
Raqamli ma’lumotlar turdagi oʻzgaruvchilarni konvertatsiya qilish
Raqamli ma’lumotlar turidagi oʻzgaruvchilarni ma’lumot turini oʻzgartirish mumkin. masalan, int oʻzgaruvchini double oʻzgaruvchi float turidagi oʻzgaruvchini int oʻzgaruvchiga oʻzgartirish mumkin. Masalan:
int i = 34.7; // i qiymati 34
double f = i; // f qiymati 34
double g = 34.3; // g qiymati 34.3
int j = g; // j qiymati 34
Agar ikkita oʻzgaruvchining biri int, ikkinchi double yoki float turida boʻlsa, ular bilan matemeatik amallarni bajarish mumkin. C++ avtomatik ravishda butun sonni double/float qiymatiga aylantiradi. Shunday qilib,
= 3 * 4,5
= 3.0 * 4,5
bilan bir xil natija beradi.
Tax hisoblash dasturi
1 #include
2 using namespace std;
3
4 int main()
5 {
6 // Xarid summasini kiriting
7 double xaridsummasi;
8 cout << "Xarid summasini kiriting: ";
9 cin >> xaridsummasi;
10
11 double soliq = xaridsummasi * 0.06;
12 cout << "Sotuv solig`i - " << (soliq * 100) / 100.0;
13
14 return 0;
15 }
Natija:
Xarid summasini kiriting: 197,55
Savdo solig`i - 11,85
Foydalanuvchi kiritgan ma’lumotni xaridsummasi o‘zgaruvchisiga saqlaydi (7–9-qatorlar). Aytaylik, foydalanuvchi 197.55 qiymatini kiritdi. Savdo solig‘i xaridning 6% ni tashkil qiladi, shuning uchun soliq 11,853 (11-qator) sifatida belgilanadi. 12-qatordagi bayonotda sonidan keyingi ikkita raqam(qoldiq) bilan 11.85 soliq ko‘rsatiladi. Shunday qilib, 12-qatordagi bayonotda kasrdan keyin ikkita raqam bilan 11.85 soliq ko‘rsatiladi.
Amaliy mashg‘ulotlar
Quyidagi kodning chop etilishi natijasini ko‘rsating:
int a = 6;
a -= a + 1;
cout << a << endl;
a *= 6;
cout << a << endl;
a /= 2;
cout << a << endl;
Quyidagi fikrlardan qaysi biri to‘g‘ri?
a. C++ da har qanday ifoda ifoda sifatida ishlatilishi mumkin.
b. X++ ifodasi bayonot sifatida ishlatilishi mumkin.
c. x = x + 5 ifodasi ham ifodadir.
d. x = y = x = 0 bayonoti noqonuniy hisoblanadi
Quyidagi kodning chop etilishini ko'rsating:
int a = 6;
int b = a++;
cout << a << endl;
cout << b << endl;
a = 6;
b = ++a;
cout << a << endl;
cout << b << endl;
Quyidagi kodning chop etilishini ko'rsating:
int a = 6;
int b = a--;
cout << a << endl;
cout << b << endl;
a = 6;
b = --a;
cout << a << endl;
cout << b << endl;
Quyidagi kodning chop etilishini ko'rsating:
double f = 12.5;
int i = f;
cout << "f is " << f << endl;
cout << "i is " << i << endl;
Quyidagi kodning chop etilishini ko'rsating:
double amount = 5;
cout << amount / 2 << endl;
cout << 5 / 2 << endl;
47 darajani radianga aylantiradigan va natijani o'zgaruvchiga tayinlaydigan bayonot yozing.
p / 7 ni gradusdagi burchakka aylantiruvchi va natijani o'zgaruvchiga tayinlaydigan bayonot yozing.
Shartli operator. Tarmoqlanish algoritmlari.
11-mavzu
bool ma’lumotlar turi
If (agar) sharti
Ikki tomonlama if-else bayonotlari
if ichida if bayonotlari (nested if)
Mantiqiy operatorlar
Kabisa yilini aniqlash dasturi
switch bayonotlari
Amaliy mashg‘ulotlar
Shartli operator: toʻliq va qisqartirilgan formasi. Tanlash va oʻtish operatorlari. Teglar. Toʻliq va toʻliq boʻlmagan shart operatori. Mantiqiy ifodalarni yaratish. Mantiqiy operatsiyalarning ustuvorliklari.
Dastur shartga asoslanib qaysi operatorlarni bajarish kerakligini hal qilishi mumkin. Tanlash bayonotlari mantiqiy ifodalar bo‘lgan shartlardan foydalanadi. Mantiqiy ifoda mantiqiy qiymatga baholanadigan ifoda hisoblanadi: true (to‘g‘ri) yoki false (noto‘g‘ri).
bool ma’lumotlar turi
Bool ma’lumotlar turi true(to‘g‘ri) yoki false (noto‘g‘r)i qiymatlariga ega o‘zgaruvchini e’lon qiladi. Radius 0 dan katta, 0 ga teng yoki 0 dan kichik kabi ikkita qiymatni solishtirish mumkin. C++ dasturlash tili ikkita qiymatni solishtirish uchun ishlatilishi mumkin bo‘lgan quyidagi jadvalda ko‘rsatilgan oltita operatorni taqdim etadi (jadvalda radius qiymati 5 deb faraz qilamiz).
|
| |