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


while ( in >> x, !in.eof()) s.push(x)



Pdf көрінісі
бет311/466
Дата20.07.2022
өлшемі3,66 Mb.
#37798
түріПрограмма
1   ...   307   308   309   310   311   312   313   314   ...   466
 
while ( in >> x, !in.eof()) s.push(x); 
 
while (! s.empty()){
 
x = s.top(); cout << x << " "; 
 
s.pop();
 
}
}
inpnum
файлының құрамы:
56 34 54 0 76 23 51 11 51 11 76 88 
Программа жұмысының нəтижесі:
88 76 11 51 11 51 23 76 0 54 34 56
Кезектер (queue)
Кезекте (анықтамасын «Кезектер» бөлімінен, 130 б. қараңыз) оның 
өлшемін өзгертетін екі операцияға рұқсат берілгені белгілі, олар – кезек 
соңына элементті қосу жəне басынан таңдау. Кезек – екіжақты кезектің не-
месе тізімнің негізінде жүзеге асыруға болатын адаптер (вектор жарамайды, 
өйткені онда басынан таңдау операциясы жоқ) болып табылады.
STL кітапханасында кезек келісім бойынша екіжақты кезектің негізінде 
анықталған:
template
class queue { 
 protected:
 
Container c; 
 public:
explicit queue(const Container& = Container()); 
bool empty() const {return c.empty();}
size_type size() const {return c.size();}
value_type& front() {return c.front();}
const value_type& front() const {return c.front();} 
value_type& back() {return c.back();}
const value_type& back() const {return c.back();} 
void push(const value_type& x) {c.push_back(x);} 
void pop() {c.pop_front();}
};
Мысалдағы
 front
жəне 
back
əдістері сəйкесінше кезектің басында жəне 
соңында орналасқан элементтердің мəндерін алу үшін қолданылады (бұл кез-
де элементтер кезекте сақталады).
Кезекпен жұмыс істеу мысалы (программа файлдан кезекке сандар енгізеді 
жəне кезек босаған кезге дейін одан таңдауды орындайды):




Достарыңызбен бөлісу:
1   ...   307   308   309   310   311   312   313   314   ...   466




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

    Басты бет