форум волчат  

Инвертирование очереди - форум программистов и не только - компьютерные программы - бесплатно
 РегистрацияРегистрация   ВходВход 
Сделать стартовой Добавить в избранное Николай Попков Правила форума
Вход в чаты: чат волчат и чат знакомств (если нет регистрации в чатах, то пароль не нужен):
Ник в чате: Пароль:
Ник в чате: Пароль:

Cайт знакомств Holiday.Ru - 12360781 анкет:

Я ищу от до лет, из города

Реальные бесплатные знакомства в твоем городе:

Я ищу от до лет, в регионе

Рекламное агентство Реклама SU - контекстная реклама и продвижение сайтов с оплатой за результат
Форум Раскрутка сайта и форум Маркетинг и реклама. Чаты. Shot.Su - игровой сервер CSS и CS
Сонник. Анекдоты. Приметы. Aфоризмы. Тосты.

Баннерная сеть ClickHere
Инвертирование очереди

 
   Список форумов волчат -> форум программистов и не только - компьютерные программы
Форум Раскрутка сайтов  
Автор Сообщение
MariaaaОффлайн
Зарегистрирован: 10.05.2006
Всего сообщений: 1
Откуда: Россия
Пол: Женский
10 Май 2006 Ср 16:14   Инвертирование очереди

С++
Помогите, пожалуйста, написать функцию, инвертирующую очередь в классе QueueInt.
Вот программа:

#include<iostream.h>
#include<conio.h>
enum BOOL {false, true};
//----------------------------------------------------------- -------
class List
{
int data;
List *next, *prev;
int Get() {return data;}
public:
List(const int d)
{
data=d;
next=prev=NULL;
}
friend class ListInt;
friend class QueueInt;
friend ostream & operator<<(ostream&, ListInt*);
friend istream & operator>>(istream&, ListInt*);
};
//-------------------------------------------------------- ----------
class ListInt
{
protected:
List *back, *front, *token;
friend ostream & operator<<(ostream&, ListInt*);
friend istream & operator>>(istream&, ListInt*);
public:
ListInt()
{
back=front=token=NULL;
}
void PutToken(int val)
{
List *p = new List(val);
if(empty())
front=back=p;
else
{
back->next=p; p->prev=back;
back=p;}
}
virtual int GetToken()
{
if(token==NULL) token=front;
if(token)
{
int rv=token->data;
token=token->next;
return rv;
}
else return 0;}
BOOL empty()
{return front==NULL? true:false;}
};
//------------------------------------------------ ------------------
class QueueInt: public ListInt
{
int GetToken();
};
//--------------------------------------------------------- ---------
ostream & operator<<(ostream& os, ListInt*q)
{
os<<"<";
do
{
if(!q->empty())
os<<q->GetToken()<<",";
}
while(q->token );
return os<<">"<<endl;
}
//---------------------------------------------------------- -----
istream & operator>>(istream& is, ListInt*q)
{
int a; int k;
cout<<"Сколько элементов будите вводить? ";
is>>k;
for(int i=0; i<k; i++)
{
cout<<i+1<<": ";
is>>a;
q->PutToken(a);
}
return is;
}
//---------------------------------------------------------- -----------------
int QueueInt::GetToken()
{
if(token==NULL) token=back;
if(back)
{
back=back->prev;
if(back)
{
back->next=NULL;
}
else front=NULL;
int retval=token->data;
delete token;
token=back;
return retval;
}
else return 0;
}
//----------------------------------------------------------- ------
int main()
{
clrscr();
ListInt* lst=new ListInt;
cin>>lst;
cout<<"Список:\n";
cout<<lst;
ListInt*och;
cout<<"Очередь:\n";
cout<<och;
getch();
return 0;
}
Вернуться к началу
View user's profile 
VodolazОффлайн
Зарегистрирован: 05.08.2005
Всего сообщений: 199
Откуда: Мать городов русских
Пол: Мужской
24 Май 2006 Ср 18:05   Инвертирование очереди

Блин.... В коде рыться твоём я не буду.....
Но короче создаешь стек и сначала перетакиваешь все эллементы в стек, потом в очередь... ВСЁ!!
Вернуться к началу
View user's profile 
Показать сообщения:   
смешные анекдоты и политика
форум женщин - женский форум
форум компьютерные игры
музыкальный форум
Бесплатные игры и чат знакомств
Сайты знакомств: Знакомство.su,
К, ML и серьезные знакомства для брака (подбор партнера по тестам).


Партнерка Яндекса

Замуж за рубеж: любовный маг, невеста



сервис ремонт фотоаппаратов

pr агентство Реклама SU, оптимизация сайтов, баннеры - баннерная сеть. Партнерские программы
Бесплатные сервисы для вас: Виртуальная клавиатура и транслит.
IP адрес - где узнать мой IP адрес? ip address

бесплатный форум


free forum