Nishonov Najmiddin Azimboyev Otabek 951-20 guruh Hisobot №1



Download 0,89 Mb.
bet14/14
Sana25.01.2022
Hajmi0,89 Mb.
#410474
1   ...   6   7   8   9   10   11   12   13   14
Bog'liq
1-10 gacha lab

Konteynerlar (containers) – bu boshqa elementlarni saqlovchi ob’ektlar. Masalan, vektor, chiziqli ro‘yxat, to‘plam.

  • Assotsiativ konteynerlar (associative containers) kalitlar yordamida ularda saqlanadigan qiymatlarni tezkor olish imkonini yaratadi.

    Xar bir sinf – konteynerida ular bilan ishlash uchun mo‘ljallangan funksiyalar to‘plami aniqlangan. Masalan, ruyxat elementlarni kiritish, chiqarish, va qo‘shish funksiyalarni o‘z ichiga oladi.

    • Algoritmlar (algorithms) konteyner ichidagilar ustidan operatsiyalar bajaradi. Konteyner ichidagilarni initsializatsiyalash, qidirish, saralash va almashtirish uchun algoritmlar mavjud. Ko‘p algoritmlar konteyner ichidagi elementlarni chiziqi ro‘yxatini ifodalaydovchi ketma-ketlik (sequence) bilan ishlash uchun mo‘ljallangan.

    • Iteratorlar (iterators) – bu konteynerga nisbatan ko‘rsatkich sifatida bo‘lgan ob’ektlar. Ular massiv elementlariga ruxsat oluvchi ko‘rsatkichlar kabi, konteyner ichidagiga ruxsat olish imkoni beradi.


    Variantlar.


    п/п


    Первый

    контейнер

    Второй

    контейнер



    Встроенный

    тип данных



    1

    vector

    list

    int

    2

    list

    deque

    long

    3

    deque

    stack

    float

    4

    stack

    queue

    double

    5

    queue

    vector

    f

    6

    vector

    stack

    string

    7

    map

    list

    long

    8

    multimap

    deque

    float

    9

    set

    stack

    int

    10

    multiset

    queue

    char

    11

    vector

    map

    double

    12

    list

    set

    int

    13

    deque

    multiset

    long

    14

    stack

    vector

    float

    15

    queue

    map

    int

    16

    priority_queue

    stack

    char

    17

    map

    queue

    char

    18

    multimap

    list

    int

    19

    set

    map

    char

    20

    multiset

    vector

    int

    TOPSHIRIQ

    1. Stack elementlari orasidan k ga teng elementlarni olib tashlovchi dastur tuzing.
    #include

    using namespace std;

    int main()

    {

    stack a;



    int n,i,x;

    cin>>n;


    for (int i=0; i{

    cin>>x;



    a.push(x);

    }

    int k; cin>>k;



    while (!a.empty())

    {

    if (a.top()!=k)



    {

    cout << a.top() << " ";

    a.pop();

    } else a.pop();

    }

    }



    5.1-Laboratoriya mashg’uloti

    Funksiya va sinf shablonlari.


    Shablonlar haqida Ushbu darsda C++ dasturlash tilining asosiy hususiyatlaridan bo’lgan shablonlar bilan tanishamiz. Shablonlar yordamida umumiy funksiyalar va umumiy classlar yaratish imkoniyati mavjud.

    Umumiy funksiya va umumiy classlar har xil ma’lumot toifalaridan ularni overload qilmasdan (ko’p kod yozmasdan) foydalanish imkoniyatini beradi. Ya’ni bunda biz har bir toifa uchun aloxida funksiya yozishimiz shart bo’lmaydi. Shablonlar ikki xil bo’ladi:



      • Funksiya shabloni (function template)

      • Sinf shabloni (class template)

    Funksiya shablonini (function template) yaratish


    Funksiya shabloni template kalit so’zidan foydalangan holda amalga oshiriladi.



    template TOIFA> qaytarish-tipi funk-nomi (arg-lar)

    {

    // funksiya tanasi

    }
    Quyida funksiya shablonini yaratish formasi keltirilgan:

    Bu yerda TOIFA funksiya tomonidan joriy holda ishlatiladigan ma’lumot tipi. Ushbu toifani kompilyator avtomatik ravishda funksiyaga kelayotgan ma’lumot tipi bilan almashtirib qo’yadi.

    Bu yerda class va template lar funksiya shablonini yaratish uchun ishlatiladigan kalit so’zlardir. Lekin ba’zi hollarda class kalit so’zi o’rniga typename kalit so’zini ishlatishimiz mumkin. Quyidagi misol hohlagan tipda berilgan ikkita o’zgaruvchi o’rnini almashtirib berish uchun xizmat qiladi va bunda har bir toifa uchun alohida funksiya yozishimizga zaruriyat qolmaydi.



    #include using namespace std;

    // Funksiya shabloni e’lon qilinishi...

    template

    void swapargs(X &a, X &b)

    {

    X temp; temp = a; a = b;


    Funksiya shabloniga miso

    TOPSHIRIQ

    2. Vektor elementlari ichidan k-eng kata elementni topuvchi dastur tuzing.
    #include

    using namespace std;

    int main()

    {

    vector a;



    int n,i;

    float x;


    cin>>n;

    for (int i=0; i

    {

    cin>>x;


    a.push_back(x);

    }

    sort(a.begin(), a.end());



    int k;

    cin>>k;


    cout << a[n-k] << endl;

    }




    Download 0,89 Mb.

    Do'stlaringiz bilan baham:
  • 1   ...   6   7   8   9   10   11   12   13   14




    Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
    ma'muriyatiga murojaat qiling

    kiriting | ro'yxatdan o'tish
        Bosh sahifa
    юртда тантана
    Боғда битган
    Бугун юртда
    Эшитганлар жилманглар
    Эшитмадим деманглар
    битган бодомлар
    Yangiariq tumani
    qitish marakazi
    Raqamli texnologiyalar
    ilishida muhokamadan
    tasdiqqa tavsiya
    tavsiya etilgan
    iqtisodiyot kafedrasi
    steiermarkischen landesregierung
    asarlaringizni yuboring
    o'zingizning asarlaringizni
    Iltimos faqat
    faqat o'zingizning
    steierm rkischen
    landesregierung fachabteilung
    rkischen landesregierung
    hamshira loyihasi
    loyihasi mavsum
    faolyatining oqibatlari
    asosiy adabiyotlar
    fakulteti ahborot
    ahborot havfsizligi
    havfsizligi kafedrasi
    fanidan bo’yicha
    fakulteti iqtisodiyot
    boshqaruv fakulteti
    chiqarishda boshqaruv
    ishlab chiqarishda
    iqtisodiyot fakultet
    multiservis tarmoqlari
    fanidan asosiy
    Uzbek fanidan
    mavzulari potok
    asosidagi multiservis
    'aliyyil a'ziym
    billahil 'aliyyil
    illaa billahil
    quvvata illaa
    falah' deganida
    Kompyuter savodxonligi
    bo’yicha mustaqil
    'alal falah'
    Hayya 'alal
    'alas soloh
    Hayya 'alas
    mavsum boyicha


    yuklab olish