C++ operatorlari
Operatorlar - o'zgaruvchilar va qiymatlar ustida amallarni bajaradigan belgilar. Misol uchun, + qo'shish uchun ishlatiladigan operator, - esa ayirish uchun ishlatiladigan operatordir.
C++ tilidagi operatorlarni 6 turga bo‘lish mumkin:
Arifmetik operatorlar o'zgaruvchilar va ma'lumotlar ustida arifmetik amallarni bajarish uchun ishlatiladi. Masalan,
a + b;
Bu erda + operatori ikkita o'zgaruvchini a va b qo'shish uchun ishlatiladi. Xuddi shunday C++ da boshqa turli arifmetik operatorlar mavjud.
Operator Operation + Addition - Subtraction * Multiplication / Division % Modulo Operation (Remainder after division)
#include <iostream>
using namespace std;
int main() {
int a, b;
a = 7;
b = 2;
// a va b yig'indisini chop etish
cout << "a + b = " << (a + b) << endl;
// a va b ning farqini chop etish
cout << "a - b = " << (a - b) << endl;
// a va b mahsulotini chop etish
cout << "a * b = " << (a * b) << endl;
// a ning b ga bo'linishini chop etish
cout << "a / b = " << (a / b) << endl;
// a ning modulini b ga bosib chiqarish
cout << "a % b = " << (a % b) << endl;
return 0;
}
Chiqish
a + b = 9
a - b = 5
a * b = 14
a / b = 3
a % b = 1
Bu yerda + , - va * operatorlari biz kutganimizdek mos ravishda qo‘shish, ayirish va ko‘paytirishni hisoblaydi.
/ Bo'lim operatori
Dasturimizdagi (a / b) operatsiyasiga e'tibor bering. / operatori bo'linish operatori hisoblanadi.
Yuqoridagi misoldan ko'rinib turibdiki, agar butun son boshqa butun songa bo'linsa, biz qismni olamiz. Biroq, agar bo'luvchi yoki dividend suzuvchi nuqtali son bo'lsa, natijani o'nli kasrlarda olamiz.
In C++,
7/2 is 3
7.0 / 2 is 3.5
7 / 2.0 is 3.5
7.0 / 2.0 is 3.5
% Modulo operatori
% modul operatori qolgan qismini hisoblab chiqadi. a = 9 b = 4 ga bo'linganda, qolgan 1 bo'ladi.
[!NOTE]
%operatoridan faqat butun sonlar bilan foydalanish mumkin.
C++ ham oshirish va kamaytirish operatorlarini taqdim etadi: mos ravishda ++ va -- .
-++ operand qiymatini 1 ga oshiradi
-- decreases it by 1Masalan,
int num = 5;
// oshirish operatori
++num; // 6
Bu erda ++num; kodi num qiymatini 1 ga oshiradi.
// O'stirish va kamaytirish operatorlarining ishlashi
#include <iostream>
using namespace std;
int main() {
int a = 10, b = 100, result_a, result_b;
// a ni 1 ga oshirish va natijani result_a da saqlash
result_a = ++a;
cout << "result_a = " << result_a << endl;
// b ni 1 ga kamaytirish va natijani natija_b da saqlash
result_b = --b;
cout << "result_b = " << result_b << endl;
return 0;
}
Chiqish
result_a = 11
result_b = 99
Yuqoridagi dasturda biz ++ va -- operatorlarini prefiks sifatida ishlatganmiz (++a va --b). Biroq, biz ushbu operatorlardan postfiks sifatida ham foydalanishimiz mumkin (a++ va b--).
Qo'shimcha ma'lumot olish uchun increment and decrement operators ga tashrif buyuring.
C++ tilida o‘zgaruvchilarga qiymatlarni belgilash uchun belgilash operatorlari qo‘llaniladi. Masalan,
// a ga 5 ni belgilang
a = 5;
Bu erda biz a o'zgaruvchisiga 5 qiymatini tayinladik.
Operator Example Equivalent to = a = b; a = b; += a += b; a = a + b; -= a -= b; a = a - b; *= a *= b; a = a * b; /= a /= b; a = a / b; %= a %= b; a = a % b;
#include <iostream>
using namespace std;
int main() {
int a, b;
// 2 a ga tayinlangan
a = 2;
// 7 b ga tayinlangan
b = 7;
cout << "a = " << a << endl;
cout << "b = " << b << endl;
cout << "\nAfter a += b;" << endl;
// a va b ning yig'indisini a ga belgilash
a += b; // a = a +b
cout << "a = " << a << endl;
return 0;
}
Chiqish
a = 2
b = 7
After a += b;
a = 9
Ikki operand o'rtasidagi munosabatni tekshirish uchun relyatsion operator ishlatiladi. Masalan,
// a b dan katta ekanligini tekshiradi
a > b;
Bu yerda > relyatsion operatordir. U a b dan katta yoki yo'qligini tekshiradi.
Agar munosabat rost bo'lsa, u 1 ni, agar munosabat noto'g'ri bo'lsa, 0 ni qaytaradi.
Operatorning ma'nosi == 3 == 5 ga teng bo'lsa, bizga noto'g'ri != beradi 3 != 5 ga teng emas > dan kattaroq 3 > 5 bizga noto'g'ri < beradi 3 < 5 dan kichik >= XCODEX dan katta yoki tengdir XCODEXs bizga XCO1se yoki 3 <= 5 ga teng bizga haqiqatni beradi
#include <iostream>
using namespace std;
int main() {
int a, b;
a = 3;
b = 5;
bool result;
result = (a == b); // yolg'on
cout << "3 == 5 is " << result << endl;
result = (a != b); // rost
cout << "3 != 5 is " << result << endl;
result = a > b; // yolg'on
cout << "3 > 5 is " << result << endl;
result = a < b; // rost
cout << "3 < 5 is " << result << endl;
result = a >= b; // yolg'on
cout << "3 >= 5 is " << result << endl;
result = a <= b; // rost
cout << "3 <= 5 is " << result << endl;
return 0;
}
Chiqish
3 == 5 is 0
3 != 5 is 1
3 > 5 is 0
3 < 5 is 1
3 >= 5 is 0
3 <= 5 is 1
[!NOTE] Relyatsion operatorlar qaror qabul qilishda va sikllarda qo'llaniladi.
Mantiqiy operatorlar ifodaning to'g'ri yoki noto'g'ri ekanligini tekshirish uchun ishlatiladi. Agar ifoda rost bo'lsa, u 1 ni, agar ifoda noto'g'ri bo'lsa, 0 ni qaytaradi.
Operator misoli Ma'nosi && ifoda1 && ifoda2 Mantiqiy VA.True faqat barcha operandlar rost bo'lsa. || ifodasi1 || ifoda2 Mantiqiy OR.True operandlardan kamida bittasi rost bo'lsa. ! !ifoda Mantiqiy YO'Q.True faqat operand noto'g'ri bo'lsa.
C++ tilida mantiqiy operatorlar odatda qaror qabul qilishda ishlatiladi. Mantiqiy operatorlarni tushunish uchun quyidagi misollarni ko'rib chiqamiz:
Suppose,
a = 5
b = 8
Then,
(a > 3) && (b > 5) evaluates to true
(a > 3) && (b < 5) evaluates to false
(a > 3) || (b > 5) evaluates to true
(a > 3) || (b < 5) evaluates to true
(a < 3) || (b < 5) evaluates to false
!(a < 3) evaluates to true
!(a > 3) evaluates to false
#include <iostream>
using namespace std;
int main() {
bool result;
result = (3 != 5) && (3 < 5); // rost
cout << "(3 != 5) && (3 < 5) is " << result << endl;
result = (3 == 5) && (3 < 5); // yolg'on
cout << "(3 == 5) && (3 < 5) is " << result << endl;
result = (3 == 5) && (3 > 5); // yolg'on
cout << "(3 == 5) && (3 > 5) is " << result << endl;
result = (3 != 5) || (3 < 5); // rost
cout << "(3 != 5) || (3 < 5) is " << result << endl;
result = (3 != 5) || (3 > 5); // rost
cout << "(3 != 5) || (3 > 5) is " << result << endl;
result = (3 == 5) || (3 > 5); // yolg'on
cout << "(3 == 5) || (3 > 5) is " << result << endl;
result = !(5 == 2); // rost
cout << "!(5 == 2) is " << result << endl;
result = !(5 == 5); // yolg'on
cout << "!(5 == 5) is " << result << endl;
return 0;
}
Chiqish
(3 != 5) && (3 < 5) is 1
(3 == 5) && (3 < 5) is 0
(3 == 5) && (3 > 5) is 0
(3 != 5) || (3 < 5) is 1
(3 != 5) || (3 > 5) is 1
(3 == 5) || (3 > 5) is 0
!(5 == 2) is 1
!(5 == 5) is 0
Mantiqiy operator dasturini tushuntirish
-(3 != 5) && (3 < 5) 1 ga baholanadi, chunki (3 != 5) va (3 < 5) ikkala operand ham 1 (to'g'ri).
-(3 == 5) && (3 < 5) 0 ga baholanadi, chunki (3 == 5) operand 0 (noto'g'ri).
-(3 == 5) && (3 > 5) 0 ga baholanadi, chunki (3 == 5) va (3 > 5) operandlari ham 0 (noto‘g‘ri).
-(3 != 5) || (3 < 5) 1 ga baholanadi, chunki (3 != 5) va (3 < 5) ikkala operand ham 1 (to'g'ri).
-(3 != 5) || (3 > 5) 1 ga baholanadi, chunki (3 != 5) operand 1 (to'g'ri).
-(3 == 5) || (3 > 5) 0 ga baholanadi, chunki (3 == 5) va (3 > 5) operandlari ham 0 (noto‘g‘ri).
-!(5 == 2) 1 ga baholanadi, chunki (5 == 2) operand 0 (noto'g'ri).
-!(5 == 5) 0 ga baholanadi, chunki (5 == 5) operand 1 (to'g'ri).
C++ tilida bitli operatorlar alohida bitlar ustida amallarni bajarish uchun ishlatiladi. Ular faqat char va int ma'lumotlar turlari bilan birga ishlatilishi mumkin.
Operator Description & Binary AND | Binary OR ^ Binary XOR ~ Binary One's Complement << Binary Shift Left >> Binary Shift Right
Qo'shimcha ma'lumot olish uchun C++ bitwise operators ga tashrif buyuring.
Bu erda C++ tilida mavjud bo'lgan boshqa umumiy operatorlar ro'yxati keltirilgan. Biz ular haqida keyingi darslarda bilib olamiz.
Operator tavsifi sizeof misoli sizeof(int); // 4 maʼlumotlar turi hajmini qaytaradi ?: shartga asoslangan qiymatni qaytaradi string result = (5 > 0) ? "even" : "odd"; // "even" & operandning xotira manzilini ifodalaydi # // address of num . tuzilma oʻzgaruvchilari yoki sinf obʼyektlari aʼzolariga kirishadi s1.marks = 92; -> XCODEX varillariga kirish uchun koʻrsatkichlar bilan foydalaniladi XCODEX yoki X190 chop etish uchun. cout << 5; >> chiqish qiymati cin >> num; kirish qiymatini oladi
Shuningdek o'qing: