Advertisement
HotAsIce

Untitled

May 27th, 2015
229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 5.06 KB | None | 0 0
  1. void search_job (rabotnichek* first_r, vacancy* &first_v, int r, organiztion *first_o) //сделать удаление работников
  2. {
  3.     vacancy* vac;
  4.     vacancy* new_vac=NULL;
  5.     vacancy* new_vac1;
  6.     vacancy* p;
  7.     rabotnichek* rab;
  8.     rabotnichek* new_rab=NULL;
  9.     rabotnichek* new_rab1=NULL;
  10.     organiztion* org;
  11.     int x;
  12.     int T[r];
  13.     int k=0, m=-1, h=0;
  14.     int j;
  15.     for (rab=first_r; rab!=NULL; rab=rab->next) //перемещение по работникам
  16.     {
  17.         for (vac=first_v; vac!=NULL; vac=vac->next)
  18.         {
  19.             if (rab->id==vac->id)
  20.             {
  21.                 if (rab->deg>=vac->deg)
  22.                 {
  23.                     if ((rab->sal-1500<=vac->sal) && (rab->sal+2500>=vac->sal))
  24.                     {
  25.                         m++; //номер элемента подходящей вакансии в массиве
  26.                         T[m]=k; //номер нужной вакансии
  27.                         cout<<"Найдена вакансия "<<m+1<<endl;
  28.                         while (vac->name->n->next!=NULL)
  29.                         {
  30.                             for (j=0; j<20; j++)
  31.                             {
  32.                                 cout<<vac->name->n->title[j]; ff<<vac->name->n->title[j];
  33.                             }
  34.                         }
  35.                         for (j=0; j<vac->name->last_len; j++)
  36.                         {
  37.                             cout<<vac->name->n->title[j]; ff<<vac->name->n->title[j];
  38.                         }
  39.                         ff<<endl<<"График: "<<vac->graf[0]<<" через "<<vac->graf[1]<<endl<<"Зарплата: "<<vac->sal<<endl;
  40.                         cout<<endl<<"График: "<<vac->graf[0]<<" через "<<vac->graf[1]<<endl<<"Зарплата: "<<vac->sal<<endl;
  41.                     }
  42.                 }
  43.             }
  44.             k++;
  45.         }
  46.         if (m!=-1)
  47.         {
  48.             cout<<"Больше вакансий нет. Введите номер понравившейся. Чтобы ничего не выбрать, нажмите 0"<<endl;
  49.             cin>>x;
  50.             if (x!=0)
  51.             {
  52.                 vac=first_v;
  53.                 for (j=0; j<T[x-1]; j++)
  54.                     vac=vac->next;
  55.                 if (vac==first_v && new_vac==NULL)
  56.                 {
  57.                     first_v=vac->next;
  58.                     new_vac=vac;
  59.                     vac->next=NULL;
  60.                     new_vac1=new_vac;
  61.                     vac=first_v;
  62.                     new_vac->next=NULL;
  63.                 }else
  64.                 if (vac!=first_v && new_vac==NULL && vac->next==NULL)
  65.                 {
  66.                     new_vac=vac;
  67.                     new_vac->next=NULL;
  68.                     vac->prev->next=NULL;
  69.                     vac->next=NULL;
  70.                     vac=vac->prev;
  71.                 }else
  72.                 if (vac!=first_v && new_vac!=NULL && vac->next!=NULL)
  73.                 {
  74.                     new_vac->next=vac;
  75.                     vac->prev->next=vac->next;
  76.                     new_vac->next->next=NULL;
  77.                     p=vac->prev;
  78.                     vac->prev=NULL; vac->next=NULL;
  79.                     vac=p;
  80.                 }else
  81.                 if (vac!=first_v && new_vac!=NULL && vac->next==NULL)
  82.                 {
  83.                     vac->prev->next=NULL;
  84.                     new_vac->next=vac;
  85.                     new_vac->next->next=NULL;
  86.                     vac=vac->prev;
  87.                 }else
  88.                 if (vac!=first_v && new_vac==NULL)
  89.                 {
  90.                     new_vac=vac;
  91.                     vac->prev->next=vac->next;
  92.                     vac->next->prev=vac->prev;
  93.                     new_vac->next=NULL;
  94.                     new_vac->prev=NULL;
  95.                     new_vac1=new_vac;
  96.                 }else
  97.                 if (vac==first_v && new_vac!=NULL)
  98.                 {
  99.                     new_vac->next=first_v;
  100.                     new_vac->next->next=NULL;
  101.                     first_v=vac->next;
  102.                     vac->next=NULL;
  103.                     vac=first_v;
  104.                 }
  105.             m=-1; k=0;
  106.             }
  107.             new_vac=new_vac1;
  108.             vac=first_v;
  109.             cout<<"откуда удаляли:"<<endl;
  110.             for (vac; vac!=NULL; vac=vac->next)
  111.             {
  112.                 for (j=0; j<vac->name->last_len; j++)
  113.                 {
  114.                     cout<<vac->name->n->title[j];
  115.                 }
  116.                 cout<<endl;
  117.             }
  118.             cout<<"чего состряпали:"<<endl;
  119.             for (new_vac; new_vac!=NULL; new_vac=new_vac->next)
  120.             {
  121.                 for (j=0; j<new_vac->name->last_len; j++)
  122.                 {
  123.                     cout<<new_vac->name->n->title[j];
  124.                 }
  125.             }
  126.             cout<<endl<<endl;
  127.             vac=first_v; new_vac=new_vac1;
  128.         }
  129.         else
  130.            {cout<<"К сожалению, для этого работника вакансии не нашлось"<<endl; k=0;}
  131.     }
  132. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement