Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<iostream>
- using namespace std;
- class elementD{ private: int info;
- class element *next;
- class element *prev;
- public: element(){ next=NULL;};
- ~element(){ };
- int set_value(int this_value){ info=this_value; }
- int reveal_value(){ return info; }
- int set_next(element *next_element){ next=next_element; }
- element *reveal_next(){ return next; }};
- class some_listD{ private: element *start,*current,*last;
- int lungime;
- public: some_list(){ start=curent=sfarsit=NULL;lungime=0; }
- int set_lenght(int new_lenght){ lungime=new_lenght; }
- int set_start(element *new_start){ start=new_start; }
- int set_curent(element *new_curent){ curent=new_curent; }
- int set_end(element *new_sfarsit){ sfarsit=new_sfarsit; }
- element *reveal_end(){ return sfarsit; }
- element *reveal_start(){ return start; }
- element *reveal_start(){ return start; }
- int reveal_lenght(){ return lungime; }
- element *reveal_current(){ return curent; }
- int reveal_me(int direction){
- cout<<endl; cout<<" START : ";
- int counter=reveal_lenght();
- if ( direction==1) {
- element *walker=start;
- if (counter>=1){while(counter>=2){
- cout<<walker->reveal_value()<<" -> ";
- walker=walker->reveal_next();counter--;}
- cout<<walker->reveal_value();} cout<<" : STOP ";
- }
- else {
- cout<<" work in progress !";
- }
- return 1;};
- class no_strategyD:public some_listD
- {
- public :
- int find_value(int this_value);
- int addsome ( int value, int direction );
- int delsome ( int *old_value,int direction );
- };
- no_strategyD L;
- int main(){
- L.addsome(1,1);
- L.addsome(2,1);
- L.addsome(3,1);
- L.some_listD::reveal_me(0); // 1 2 3
- L.some_listD::reveal_me(1); // 3 2 1
- return 0;
- }
- int no_strategyD::addsome ( int value, int direction )
- {
- if (stack_empty()) {
- element *new_one;
- new_one->set_value(value);
- new_one->set_next(NULL);
- some_stack::set_lenght(1);
- some_stack::set_curent(new_one);
- some_stack::set_start(new_one);
- some_stack::set_end(new_one);
- return -1;
- }
- if (direction==0) {
- }
- // (1)
- element *new_one=new element;
- // (2)
- new_one->set_next(NULL);
- // (3)
- new_one->set_value(value);
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement