• 1.2.1. Butun toifa – int
  • Ma’lumotlar tuzilmasi va algoritmlar” 1-tajriba ishi. Dasturlash tillarida ma’lumotlarning standart turlari




    Download 106.21 Kb.
    bet1/11
    Sana02.11.2023
    Hajmi106.21 Kb.
    #93267
      1   2   3   4   5   6   7   8   9   10   11
    Bog'liq
    1-амалий иш
    3-mavzu. Xatoliklar nazariyasi reja-fayllar.org, Navigatsiya - Vikipediya, I-II-III darajali sertifikat

    MA’LUMOTLAR TUZILMASI VA ALGORITMLAR”
    1-tajriba ishi. Dasturlash tillarida ma’lumotlarning standart turlari


    Ishdan maqsad: Ma’lumotlarning standart turlarini o‘rganish va ularni tadqiq qilish.
    Qo‘yilgan masala: C++ tilida butun, haqiqiy, belgili, mantiqiy toifadagi ma’lumotlarni e’lon qilish, standart toifalarni yaratish va ularga doir misollarning dasturini ishlab chiqish.
    Ish tartibi:

    • Tajriba ishi nazariy ma’lumotlarini o‘rganish;

    • Berilgan topshiriqning algoritmini ishlab chiqish;

    • C++ dasturlash muhitida dasturni yaratish;

    • Natijalarni tekshirish;

    • Hisobotni tayyorlash va topshirish.


      1. Ma’lumotlar toifalari


    Ko‘plab dasturlash tillarida ma’lumotlar bazaviy va keltirilgan toifalarga ajratiladi. Ma’lumotlarning toifalarini 1.1-rasmdagidek klassifikatsiyalash mumkin.



    1.1-rasm. Toifalar klassifikatsiyasi
    Ma’lumotlarning ixtiyoriy toifasi qiymatlar sohasi va ular ustida bajarilishi mumkin bo‘lgan amallar orqali tavsiflanadi. void kalit so‘zi hech qanday toifaga ega emaslikni anglatadi. Bunday toifadagi funksiyalar hech qanday qiymatni qaytarmaydi. Lekin asosiy dastur tanasi, ya’ni main() funksiyasi void toifasiga ega bo‘lolmaydi, u int toifasida bo‘lishi kerak.



      1. Standart toifalar

    1.2.1. Butun toifa – int


    Mazkur toifa butun sonlar to‘plamining qandaydir qism to‘plami bo‘lib, uning o‘lchami mashina, ya’ni kompyuter konfiguratsiyasiga bog‘liq ravishda o‘zgarib turadi. Mazkur toifaga kiruvchi sonlar ikkiga bo‘linadi: ishorali (signed) va ishorasiz (unsigned). Sonlarmi xotirada tasvirlashda eng chapdagi bit ishora uchun belgilanadi. Toifalarni signed (ishorali), unsigned (ishorasiz) kalit so‘zlari bilan modifikatsiyalash mumkin. Bunda ishorali toifa uchun ajratilgan joyning eng chap biti ishora uchun, qolgan bitlar qiymatlarni saqlash uchun ishlatiladi, ya’ni 0 – plus, 1 - minus. Ishorasiz toifalarda esa barcha bitlar qiymatlarni saqlash uchun ishlatiladi. Ularning har biri uchun mos ravishda qiymat qabul qilish oralig‘i mavjud:


    a) ishorasiz sonlar uchun (0...2n-1);
    b) ishoralilar uchun (-2n-1… 2n-1-1).
    Butun sonlar ustida turli matematik (+, -, /, *) va solishtirish amallarini bajarish mumkin, ya’ni ==, !=, <, <=, >, >= operatorlar bilan binar amallarni bajarish mumkin. Ammo bu operatsiyalarning natijalari int toifasiga kirmaydi, ular bool toifasiga kiradi.
    Butun qiymat qabul qiluvchi o‘zgaruvchilarni e’lon qilish uchun int, short int, long int xizmatchi so‘zlaridan foydalanish mumkin. Butun qiymatli toifalarning barchasi 1.1-jadvalda keltirilgan:
    1.1-jadval
    Butun toifa shakllari



    Toifa ko‘rinishi

    Mazkur toifadagi o‘zgaruvchining qabul qiladigan qiymatlar oralig‘i

    O‘zgaruvchining kompyuter xotirasidan egallaydigan joyi

    short int

    signed: -32768 ... 32767
    unsigned: 0 ... 65535

    2 bayt

    int

    signed: -2147483648 ... 2147483647
    unsigned: 0 ... 4294967295

    4 bayt

    long int

    signed: -2147483648 ... 2147483647
    unsigned: 0 ... 4294967295

    4 bayt

    Bu sanab o‘tilgan toifalar o‘zlarining qiymatlar qabul qilish oralig‘i va xotiradan egallagan joyining katta yoki kichikligi bilan farqlanadi. Shuning uchun, o‘zgaruvchilarning qabul qiladigan qiymatlarini katta yoki kichikligiga qarab, yuqoridagi toifalardan mosini tanlash maqsadga muvofiqdir.


    Toifalar uchun xotira hajmining ajratilishi kompyuter konfiguratsiyasiga va kompilyatorga bog‘liq bo‘ladi. Ixtiyoriy bir toifaning xotirada egallaydigan hajmini bilish mumkin. Buning uchun sizeof() funksiyasini ishlatish mumkin.
    #include
    using namespace std;
    int main()
    {
    cout<
    system("pause");
    }
    Bu yerda natija baytlarda chiqadi, ya’ni 4. Funksiyaga kirish parametri sifatida toifa nomi beriladi.
    Butun toifaning quyidagicha ko‘rinishlari mavjud.

    Short
    short int
    signed short
    signed short int
    unsigned short
    unsigned short int
    int
    signed int
    unsigned
    unsigned int
    long
    long int
    signed long
    signed long int
    unsigned long
    unsigned long int

    Berilgan m va n butun sonlari ustida quyidagi arifmetik amallar bajarish dasturini ko‘rib chiqaylik: mn, m-n, m*n.
    #include
    using namespace std;
    int main()
    { int m,n;
    cin>>m>>n;
    int k1=m+n;
    int k2=m-n;
    int k3=m*n;
    cout<
    system("PAUSE");
    }



    Download 106.21 Kb.
      1   2   3   4   5   6   7   8   9   10   11




    Download 106.21 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Ma’lumotlar tuzilmasi va algoritmlar” 1-tajriba ishi. Dasturlash tillarida ma’lumotlarning standart turlari

    Download 106.21 Kb.