Advertisement
Guest User

Untitled

a guest
Feb 17th, 2020
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.56 KB | None | 0 0
  1. #include <iostream>
  2. #include <cstring>
  3. using namespace std;
  4. struct Art
  5. {
  6. char pren[300], nume[300], functie[300], nrtel[300], email[300];
  7. char salariu[300], varsta[300];
  8. int poz;
  9. };
  10. int main()
  11. {
  12. ///citim date
  13. Art a[101];
  14. int n, i, p, j;
  15. char c;
  16. cin >> n; cin.get();
  17. for(i = 1; i <= n; i++)
  18. {
  19. cin >> a[i].pren >> a[i].nume >> a[i].salariu >> a[i].varsta>> a[i].functie >> a[i].nrtel >> a[i].email;
  20. a[i].poz=i;
  21. }
  22. cin >> p >> c;
  23. switch(p)
  24. {
  25. case 1:
  26. {
  27. for(i = 1; i < n; i++)
  28. for(j = i + 1; j <= n; j++)
  29. if(strcmp(a[i].pren, a[j].pren) > 0 || (strcmp(a[i].pren,a[j].pren)==0 && a[i].poz>a[j].poz))
  30. swap(a[i],a[j]);
  31.  
  32. if(c == '+')
  33. for(i = 1; i <= n; i++)
  34. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " "<< a[i].varsta
  35. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  36. else
  37. for(i = n; i >= 1; i--)
  38. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " "<< a[i].varsta
  39. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  40. break;
  41.  
  42. }
  43. case 2:
  44. {
  45. for(i = 1; i < n; i++)
  46. for(j = i + 1; j <= n; j++)
  47. if(strcmp(a[i].nume, a[j].nume) > 0 || (strcmp(a[i].nume,a[j].nume)==0 && a[i].poz>a[j].poz)) swap(a[i],a[j]);
  48. if(c == '+')
  49. for(i = 1; i <= n; i++)
  50. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " "<< a[i].varsta
  51. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  52. else for(i = n; i >= 1; i--)
  53. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " "<< a[i].varsta
  54. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  55. break;
  56. }
  57. case 3:
  58. {
  59. for(i = 1; i < n; i++)
  60. for(j = i + 1; j <= n; j++)
  61. if(strcmp(a[i].salariu, a[j].salariu)>0 || (strcmp(a[i].salariu,a[j].salariu)==0 && a[i].poz>a[j].poz)) swap(a[i],a[j]);
  62.  
  63. if(c == '+')
  64. for(i = 1; i <= n; i++)
  65. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " "<< a[i].varsta
  66. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  67. else for(i = n; i >= 1; i--)
  68. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " "<< a[i].varsta
  69. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  70. break;
  71. }
  72. case 4:
  73. {
  74. for(i = 1; i < n; i++)
  75. for(j = i + 1; j <= n; j++)
  76. if(strcmp(a[i].varsta , a[j].varsta)>0 || (strcmp(a[i].varsta,a[j].varsta)==0 && a[i].poz>a[j].poz)) swap(a[i],a[j]);
  77. if(c == '+')
  78. for(i = 1; i <= n; i++)
  79. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " "<< a[i].varsta
  80. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  81. else for(i = n; i >= 1; i--)
  82. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " "<< a[i].varsta
  83. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  84. break;
  85. }
  86. case 5:
  87. {
  88. for(i = 1; i < n; i++)
  89. for(j = i + 1; j <= n; j++)
  90. if(strcmp(a[i].functie, a[j].functie) > 0 || (strcmp(a[i].functie,a[j].functie)==0 && a[i].poz>a[j].poz)) swap(a[i],a[j]);
  91. if(c == '+')
  92. for(i = 1; i <= n; i++)
  93. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " "<< a[i].varsta
  94. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  95. else for(i = n; i >= 1; i--)
  96. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " "<< a[i].varsta
  97. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  98. break;
  99. }
  100. case 6:
  101. {
  102. for(i = 1; i < n; i++)
  103. for(j = i + 1; j <= n; j++)
  104. if(strcmp(a[i].nrtel, a[j].nrtel) > 0 || (strcmp(a[i].nrtel,a[j].nrtel)==0 && a[i].poz>a[j].poz)) swap(a[i],a[j]);
  105. if(c == '+')
  106. for(i = 1; i <= n; i++)
  107. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " "<< a[i].varsta
  108. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  109. else for(i = n; i >= 1; i--)
  110. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " "<< a[i].varsta
  111. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  112. break;
  113. }
  114. case 7:
  115. {
  116. for(i = 1; i < n; i++)
  117. for(j = i + 1; j <= n; j++)
  118. if(strcmp(a[i].email, a[j].email) > 0 || (strcmp(a[i].email,a[j].email)==0 && a[i].poz>a[j].poz)) swap(a[i],a[j]);
  119. if(c == '+')
  120. for(i = 1; i <= n; i++)
  121. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " " << a[i].varsta
  122. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  123. else for(i = n; i >= 1; i--)
  124. cout << a[i].pren << " " << a[i].nume << " " << a[i].salariu << " "<< a[i].varsta
  125. << " " << a[i].functie << " " << a[i].nrtel << " " << a[i].email << "\n";
  126. break;
  127. }
  128. }
  129. return 0;
  130. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement