Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <cstring>
- #include <algorithm>
- #define NC 256
- using namespace std;
- struct art
- {
- char prenume[NC],nume[NC],salariu[NC],varsta[NC],functie[NC],numar_de_telefon[NC],email[NC];
- };
- art a[80];
- int op;
- char c;
- bool comp(art i,art j)
- {
- if(c=='+')
- {
- if(op==1)
- if(strcmp(i.prenume,j.prenume)==-1)
- return 1;
- if(op==2)
- if(strcmp(i.nume,j.nume)==-1)
- return 1;
- if(op==3)
- if(strcmp(i.salariu,j.salariu)==-1)
- return 1;
- if(op==4)
- if(strcmp(i.varsta,j.varsta)==-1)
- return 1;
- if(op==5)
- if(strcmp(i.functie,j.functie)==-1)
- return 1;
- if(op==6)
- if(strcmp(i.numar_de_telefon,j.numar_de_telefon)==-1)
- return 1;
- if(op==7)
- if(strcmp(i.email,j.email)==-1)
- return 1;
- }
- else
- {
- if(op==1)
- if(strcmp(i.prenume,j.prenume)==1)
- return 1;
- if(op==2)
- if(strcmp(i.nume,j.nume)==1)
- return 1;
- if(op==3)
- if(strcmp(i.salariu,j.salariu)==1)
- return 1;
- if(op==4)
- if(strcmp(i.varsta,j.varsta)==1)
- return 1;
- if(op==5)
- if(strcmp(i.functie,j.functie)==1)
- return 1;
- if(op==6)
- if(strcmp(i.numar_de_telefon,j.numar_de_telefon)==1)
- return 1;
- if(op==7)
- if(strcmp(i.email,j.email)==1)
- return 1;
- }
- return 0;
- }
- int main()
- {
- int n;
- char s[25000],*p,separator[]=" ",cuv[7][NC];
- cin>>n;
- cin.get();
- for(int i=0;i<n;++i)
- {
- cin.getline(s,25000);
- p=s;
- p=strtok(p,separator);
- int nr=0;
- while(p)
- strcpy(cuv[nr++],p),p=strtok(NULL,separator);
- strcpy(a[i].prenume,cuv[0]);
- strcpy(a[i].nume,cuv[1]);
- strcpy(a[i].salariu,cuv[2]);
- strcpy(a[i].varsta,cuv[3]);
- strcpy(a[i].functie,cuv[4]);
- strcpy(a[i].numar_de_telefon,cuv[5]);
- strcpy(a[i].email,cuv[6]);
- }
- cin>>op>>c;
- stable_sort(a,a+n,comp);
- for(int i=0;i<n;++i)
- cout<<a[i].prenume<<' '<<a[i].nume<<' '<<a[i].salariu<<' '<<a[i].varsta<<' '<<a[i].functie<<' '<<a[i].numar_de_telefon<<' '<<a[i].email<<'\n';
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement