Программалау оқулық Алматы, 012 Қазақстан Республикасы Білім жəне ғылым министрлігінің «Оқулық»



Pdf көрінісі
бет452/642
Дата30.03.2022
өлшемі3,66 Mb.
#29231
түріПрограмма
1   ...   448   449   450   451   452   453   454   455   ...   642
Байланысты:
pavlovskaia-jogargy-dengeili

#include  

using namespace std; 

int main(){ 

 

list L1;

 

list::iterator i, j, k;

 

for (int i = 0; i<5; i++) L1.push_back(i + 1);

 

for (int i = 12; i<14; i++) L1.push_back(i);

 

cout << "Бастапқы тізім: ";

 

for (i = L1.begin(); i != L1.end(); ++i)

 

   cout << *i << " "; 


333

 

   cout << endl; 

 

   i = L1.begin(); i++; 

 

   k = L1.end(); 

 

   j = --k; k++; j--; 

 

   L1.splice( i, L1, j, k); 

 

   cout << "Тіркестіруден кейінгі тізім: "; 

 

   for ( i = L1.begin(); i != L1.end(); ++i) 

 

 

cout << *i << " ";

}

Программаның жұмыс істеу нəтижесі:

Бастапқы тізім: 1 2 3 4 5 12 13 

Тіркестіруден кейінгі тізім: 12 13 2 3 4 5

Тасымалданған элементтер қаралайтылған қаріппен ерекшеленген. 

Тізімдер итераторлары үшін қосу жəне азайту операциялары анықталмағанына 

назар аударыңыздар, яғни 

j = k

 – 1 

деп жазуға болмайды, сондықтан тізімдер 

итераторлары үшін рұқсат етілген инкремент жəне декремент операцияларын 

қолдануға тура келді. Жалпы жағдайда тізімнен элементті іздеу үшін 



fi nd

 

функциясы қолданылады (376 б. қара).



Элементті мəні бойынша жою үшін

 remove

 функциясы қолданылады:



void remove(const T& value);

Егер тізімде 



value

 мəнді бірнеше элемент бар болса, онда олардың 

барлығы да жойылады.

Тізімнен белгілі бір шартты қанағаттандыратын элементтерді жоюға бола-

ды. Ол үшін 

remove_if

 функциясы қолданылады:



template void remove_if(Predicate pred);

Параметр ретінде тізімнің элементіне қойлатын шартты тағайындайтын 

класс-предикат алынады. Предикаттар туралы 365 б. қараңыз.

Тізім элменттерін реттеу үшін 



sort

 əдісі қолданылады:



void sort();

template void sort(Compare comp);

Бірінші жағдайда тізім элементтердің өсу ретімен (элементтер үшін 



<

 

операциясының анықтамасына сəйкес) сұрыпталып, екінші жағдайда 



Compare 

функционалды объектісіне сəйкес сұрыпталады (функционалды объектілер ту-

ралы 211 б. «Функцияны шақыру операциясының асыра жүктелуі» бөлімінде 

жазылған). Егер функционалды объектіге берілетін екі мəн сұрыпталу кезінде 

бұрынғы ретімен қалуы керек болса, онда оның мəні 



Достарыңызбен бөлісу:
1   ...   448   449   450   451   452   453   454   455   ...   642




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет