5. C tilida operatorlar¶
Oldingi bo‘limda o‘zgaruvchilar bilan tanishdik.
Masalan:
int a = 10;
int b = 5;
Endi bu sonlar bilan hisob-kitob qilishni o‘rganamiz.
C tilida hisoblash va turli amallarni bajarish uchun operatorlar ishlatiladi.
Masalan:
a + b
Bu a va b ni qo‘shadi.
Arifmetik operatorlar¶
C tilida eng ko‘p ishlatiladigan matematik operatorlar:
| Operator | Vazifasi | Misol |
|---|---|---|
+ |
Qo‘shish | 10 + 5 |
- |
Ayirish | 10 - 5 |
* |
Ko‘paytirish | 10 * 5 |
/ |
Bo‘lish | 10 / 5 |
% |
Qoldiqni topish | 10 % 3 |
Ularni birma-bir ko‘rib chiqamiz.
Qo‘shish +¶
Ikki sonni qo‘shish uchun:
+
operatoridan foydalanamiz.
Masalan:
int a = 10;
int b = 5;
int natija = a + b;
Bu yerda:
10 + 5 = 15
Natijani chiqaramiz:
#include <stdio.h>
int main() {
int a = 10;
int b = 5;
int natija = a + b;
printf("%d", natija);
return 0;
}
Natija:
15
Ayirish -¶
Ayirish uchun:
-
operatoridan foydalanamiz.
int a = 10;
int b = 5;
int natija = a - b;
Natija:
5
To‘liq dastur:
#include <stdio.h>
int main() {
int a = 10;
int b = 5;
printf("%d", a - b);
return 0;
}
Natija:
5
Ko‘paytirish *¶
Ko‘paytirish uchun * ishlatiladi.
int a = 10;
int b = 5;
printf("%d", a * b);
Natija:
50
C tilida ko‘paytirish uchun × emas, * belgisi ishlatiladi.
Bo‘lish /¶
Bo‘lish uchun / ishlatiladi.
int a = 10;
int b = 2;
printf("%d", a / b);
Natija:
5
Qoldiq %¶
% operatori bo‘lishdan qolgan qoldiqni topadi.
Masalan:
10 / 3
da 3 soni 10 ichiga 3 marta sig‘adi.
Qoldiq:
1
Shuning uchun:
printf("%d", 10 % 3);
natija:
1
bo‘ladi.
% operatori qayerda foydali?¶
Qoldiq operatori juft va toq sonlarni aniqlashda juda foydali.
Masalan:
int son = 10;
printf("%d", son % 2);
Natija:
0
Agar:
int son = 7;
printf("%d", son % 2);
bo‘lsa:
1
Demak:
son % 2 == 0
bo‘lsa, son juft bo‘ladi.
Bu usulni keyinchalik if bilan birga ishlatamiz.
Operatorlar bilan hisoblash¶
Bir nechta operatorni birgalikda ishlatish mumkin.
Masalan:
int a = 10;
int b = 5;
int natija = a + b * 2;
Bu yerda avval:
5 * 2 = 10
keyin:
10 + 10 = 20
bo‘ladi.
Natija:
20
Qavslar ()¶
Hisoblash tartibini o‘zgartirish uchun qavslardan foydalanish mumkin.
Masalan:
int natija = (10 + 5) * 2;
Avval:
10 + 5 = 15
keyin:
15 * 2 = 30
Natija:
30
Qavslardan foydalanish murakkab hisob-kitoblarni tushunarli qilishga yordam beradi.
Oddiy kalkulyator¶
Endi o‘rgangan operatorlarimiz yordamida kichik kalkulyator dasturini yozamiz.
#include <stdio.h>
int main() {
int a = 20;
int b = 5;
printf("Qo'shish: %d\n", a + b);
printf("Ayirish: %d\n", a - b);
printf("Ko'paytirish: %d\n", a * b);
printf("Bo'lish: %d\n", a / b);
return 0;
}
Natija:
Qo'shish: 25
Ayirish: 15
Ko'paytirish: 100
Bo'lish: 4
O‘zgaruvchiga yangi qiymat berish¶
Operatorlar yordamida o‘zgaruvchining qiymatini ham o‘zgartirishimiz mumkin.
Masalan:
int son = 10;
son = son + 5;
Endi:
son = 15
bo‘ladi.
Buni qisqaroq yozish ham mumkin:
son += 5;
Bu:
son = son + 5;
bilan bir xil.
Hozircha bu yozilish usulini bilib qo‘yish kifoya.
+= operatori¶
Masalan:
int son = 10;
son += 5;
Natijada:
son = 15
bo‘ladi.
Xuddi shunday:
son -= 3;
quyidagiga teng:
son = son - 3;
++ operatori¶
Sonni bittaga oshirish uchun:
++
operatoridan foydalanish mumkin.
Masalan:
int son = 10;
son++;
Endi:
son = 11
bo‘ladi.
Bu:
son = son + 1;
bilan bir xil.
-- operatori¶
Sonni bittaga kamaytirish uchun:
--
ishlatiladi.
Masalan:
int son = 10;
son--;
Natijada:
son = 9
bo‘ladi.
Bu:
son = son - 1;
bilan bir xil.
Taqqoslash operatorlari¶
C tilida faqat hisoblash emas, balki ikkita qiymatni taqqoslash ham mumkin.
Masalan:
10 > 5
Bu:
10 soni 5 dan kattami?
degan savolni beradi.
Asosiy taqqoslash operatorlari:
| Operator | Ma'nosi |
|---|---|
> |
Katta |
< |
Kichik |
>= |
Katta yoki teng |
<= |
Kichik yoki teng |
== |
Teng |
!= |
Teng emas |
Masalan:
10 > 5
to‘g‘ri.
10 < 5
noto‘g‘ri.
= va == farqi¶
Bu juda muhim.
=
qiymat berish uchun ishlatiladi.
Masalan:
int yosh = 15;
Bu yerda 15 qiymati yosh ga berildi.
Ammo:
==
ikki qiymat tengligini tekshirish uchun ishlatiladi.
Masalan:
yosh == 15
Bu:
yosh15 ga tengmi?
degan savolni bildiradi.
= va == ni bir-biri bilan adashtirmang.
Mantiqiy operatorlar¶
Bir nechta shartni birlashtirish uchun mantiqiy operatorlar ishlatiladi.
Hozircha ularning faqat nomlarini bilib qo‘yamiz:
| Operator | Ma'nosi |
|---|---|
&& |
VA |
|| |
YOKI |
! |
EMAS |
Masalan:
yosh >= 13 && yosh <= 18
bu:
yosh 13 yoki undan katta VA 18 yoki undan kichik
degan ma'noni anglatadi.
Bu operatorlarni if mavzusida batafsil ishlatamiz.
Amaliy misol¶
Quyidagi dasturda bir nechta operator ishlatilgan:
#include <stdio.h>
int main() {
int yosh = 16;
printf("Yosh: %d\n", yosh);
printf("Keyingi yil: %d\n", yosh + 1);
return 0;
}
Natija:
Yosh: 16
Keyingi yil: 17
Yana bir misol¶
Ikki sonning yig‘indisini hisoblaymiz:
#include <stdio.h>
int main() {
int a = 25;
int b = 15;
int yigindi = a + b;
printf("Yig'indi: %d", yigindi);
return 0;
}
Natija:
Yig'indi: 40
Amaliy mashqlar¶
1-mashq¶
Quyidagi ikkita sonni qo‘shadigan dastur yozing:
25
15
Natija:
40
bo‘lishi kerak.
2-mashq¶
Quyidagi sonlar bilan:
- qo‘shish;
- ayirish;
- ko‘paytirish;
- bo‘lish
amallarini bajaring:
20
4
3-mashq¶
Quyidagi dastur natijasini oldindan toping:
int a = 10;
int b = 3;
printf("%d", a % b);
4-mashq¶
Quyidagi kodni o‘zgartirib, son qiymatini 10 dan 20 ga oshiring:
int son = 10;
son += 5;
5-mashq¶
Quyidagi koddagi xatoni toping:
int yosh = 15;
if (yosh = 18) {
printf("18 yosh");
}
= va == o‘rtasidagi farqni eslang.
Muhim narsalarni eslab qoling¶
Hozircha quyidagi operatorlarni bilishimiz kifoya:
+ Qo‘shish
- Ayirish
* Ko‘paytirish
/ Bo‘lish
% Qoldiq
Shuningdek:
= Qiymat berish
== Tengligini tekshirish
> Katta
< Kichik
va:
++ 1 ga oshirish
-- 1 ga kamaytirish
Xulosa¶
Operatorlar yordamida C dasturlarida:
- hisob-kitob qilish;
- qiymatlarni o‘zgartirish;
- sonlarni taqqoslash;
- shartlarni tekshirish
mumkin.
Masalan:
int a = 10;
int b = 5;
int natija = a + b;
Bu yerda + operatori ikkita sonni qo‘shmoqda.