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:

yosh 15 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.