|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
07.05.2009, 23:32 | #1 |
Регистрация: 12.03.2009
Сообщений: 7
|
Списки C++
Доброго времени суток.Очень нужна помощь.Нужно прописать функцию следующую:
определить,сколько раз в списке встречается элемент с заданным значением и в каких позициях(справа налево).Вот то,что уже написано.Практически все из лекций #include<iostream.h> #include<conio.h> #include<stdio.h> #include<string.h> #include<stdlib.h> class TElem { friend TList; char a; TElem *next,*prev; public: TElem(); }; TElem ::TElem () { next=prev=NULL; } class TList { TElem *first,*last,*x; int count; public: TList(); void sozd(); void read_r_l(); void read_l_r(); void element_zna4(); }; TList::TList() { first=last=x=NULL; count=0; } void TList::sozd() { cout<<"Vvodim simvol,0-okon4anie"<<endl; do { x=last; last=new TElem; count++; cin>>last->a; last->next=NULL; last->prev=x; if (first==NULL)first=last; else x->next=last; } while (last->a!='#'); } void TList::read_r_l() { cout<<"Vivedite spisok sprava nalevo:" <<endl; x=last; while(x->prev!=NULL) { cout<<x->a<<endl; x=x->prev; } cout<<first->a; } void TList::read_l_r() { cout<<"Vivedite spisok sleva napravo:" <<endl; x=first; while(x->next!=NULL) { cout<<x->a<<endl; x=x->next; } cout<<last->a; } //----------------------------------------------------- void main() { clrscr(); TList fd; int a; do { cout<<"Vibiray"<<endl<<"0-vihod"<<endl <<"1-sozdanie"<<endl <<"2-4tenie right-left"<<endl <<"3-4tenie left-right"<<endl <<"4-skolko raz vstre4aetsya element i v kakoi pozicii"<<endl; cin>>a; switch(a) { case 1:fd.sozd();break; case 2:fd.read_r_l();break; case 3:fd.read_l_r();break; case 4:fd.element_zna4();break; } getch(); } while(a>=1 && a<=4); getch(); }И еще вопрос как в дальнейшем освободить выделенную память под список? Помогите,плиз,кто может.Заранее спасибо |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Списки | Bremlin | Microsoft Office Excel | 10 | 04.11.2008 15:13 |
Списки | Вилен | Общие вопросы C/C++ | 3 | 22.05.2008 00:40 |
Списки... | Arkuz | Компоненты Delphi | 2 | 19.04.2008 22:58 |
Списки | AVer | Паскаль, Turbo Pascal, PascalABC.NET | 6 | 06.12.2006 23:05 |