Muhammad Al-Xorazmiy nomidagi Toshkent Axborot Texnologiyalari Universiteti Dasturlash kafedrasi


Download 64.19 Kb.
Sana19.07.2020
Hajmi64.19 Kb.
#124306
Bog'liq
5-labaratoriya


Muhammad Al-Xorazmiy nomidagi Toshkent Axborot Texnologiyalari Universiteti

Dasturlash kafedrasi

Dasturlash II fani bo’yicha

LABARATORIYA ISHI-5



Mavzu: Standart algoritmlar va itеratorlar. Standart algoritmlar. Itеratorlar va ularning qo`llanilishi. Xotirani taqsimlovchilar va ularga qo`yilgan talablar. Standart bo`yicha taqsimlovchi.

Bajardi: _ swd013_l2____ guruh talabasi



Boymatov Elbek________________

Tekshirdi: _________________



Toshkent- 2020

Standart algoritmlar va itеratorlar. Standart algoritmlar. Itеratorlar va ularning qo`llanilishi. Xotirani taqsimlovchilar va ularga qo`yilgan talablar. Standart bo`yicha taqsimlovchi.

12-variant



  1. Yangi konteynerlar hosil qiling, uni standart funksiyalar yordamida elementlar bilan to’lating remove funksiyasi yordamida amallar bajaring;

  2. Iteratorlardan foydalanib set konteyneri ustida amallar bajaring;

  3. realloc () funksiyasidan foydalanib xotirani dinamik taqsimlashni amalga oshiring .

Yechimlari:

  1. Yangi konteynerlar hosil qiling, uni standart funksiyalar yordamida elementlar bilan to’lating remove funksiyasi yordamida amallar bajaring;

// ConsoleApplication75.cpp : main project file.

#include "stdafx.h"

#include

#include

#include

#include

#include

using namespace std;

#define OS cout<<"===================================\n"

int main()

{

srand(time(0));

vector<int> v;

int n, m;

OS;

cout << "Elementlar sonini kiriting: "; cin >> n;

cin.ignore();

OS;

for (int i = 0; i < n; i++)

{

m = rand()%100;

v.push_back(m);

cout << m << " ";

}

cout<<"\n";

OS;

auto itb = v.begin();

auto ite = v.end();

int k;

cout << "Olib tashlanishi kerak bolgan elementni kiriting: ";

cin >> k; cin.ignore();
ite = remove(itb, ite, k);

OS;

cout << "Natija:\n";

OS;

for (auto it = itb; it != ite; ++it)

{

cout << *it << " ";

}

cout<<"\n";

OS;

getch();

return 0;

}




  1. Iteratorlardan foydalanib set konteyneri ustida amallar bajaring;


// ConsoleApplication76.cpp : main project file.

#include "stdafx.h"

#include

#include

#include

#include

#include

using namespace std;

#define os cout<<"================================\n"

int main()

{

set <int> S;

set <int> ::iterator O;

set<int>::reverse_iterator o;

os;

cout<<" set elementlari :\n";

for (int i = 1; i <= 10; i++)

{

S.insert(i*i*i);

}

os;

for(O=S.begin(); O!=S.end(); O++)

{

cout<<*O<<" ";

}

cout<<endl;

os;

cout<<"set elementlari teskari:\n";

os;

for (o=S.rbegin(); o!=S.rend(); o++)

{

cout<<*o<<" ";

}

cout<<endl;

getch();

}



  1. realloc () funksiyasidan foydalanib xotirani dinamik taqsimlashni amalga oshiring .

// ConsoleApplication69.cpp : main project file.

#include "stdafx.h"

// int tipidagi ma’lumotlarni char tipga o’tkazish.

// c) realloc () funksiyasidan foydalanib xotirani dinamik taqsimlashni amalga oshiring .

#include

#include

#include

#include

#define S cout<<"<><><><><><><><><><><><>\n"

using namespace std;

int main ()

{

char *ebb;

int n,i,s=65;

S;

cout<<"Elementlar sonini kiriting : ";

n=10;

cout<<n<<endl;

ebb = (char*) realloc (ebb, n * sizeof(int));

S;

cout<<" Char tipidagi ma'lumot kiritilmoqda:\n";

for (int i = 0; i < n; i++)

{

ebb[i]=(char)s;

s+=1;

}

S;

cout<<" Kiritilgan ma'lumotlar chiqarilmoqda :\n";

S;

s=65;

for (int i = 0; i < n; i++)

{

cout<<s<<" -> "<<ebb[i]<<endl;

s+=1;

}

S;

free(ebb);

cout<<" realloc ebb free orqali tozalandi. \n";

getch();

}


Download 64.19 Kb.

Do'stlaringiz bilan baham:




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