Advertisement
Guest User

Untitled

a guest
Jan 19th, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.23 KB | None | 0 0
  1. #include <iostream>
  2. #include"Poddany.h"
  3. #include <fstream>
  4. #include <vector>
  5. #include <algorithm>
  6. #include <list>
  7. using namespace std;
  8.  
  9. bool porownajButy(Poddany &p1, Poddany &p2)
  10. {
  11. if (p1.rozmiarButa > p2.rozmiarButa)
  12. {
  13. return true;
  14.  
  15. }
  16. else
  17. {
  18. return false;
  19. }
  20. }
  21.  
  22. int main()
  23. {
  24. fstream plik;
  25. vector<Poddany>poddani;
  26. vector<Poddany>poddaniPosortowani;
  27. plik.open("zad02.csv", ios::in);
  28. if (plik.is_open())
  29. {
  30. cout << "plik otwarty poprawnie" << endl;
  31. }
  32. std::string numerUbezpieczenia;
  33. std::string imie;
  34. std::string nazwisko;
  35. std::string adresEmail;
  36. std::string plec;
  37. std::string adresIP;
  38. std::string ulubionyLek;
  39. std::string ulubionaPoezja;
  40. int rozmiarButa;
  41.  
  42. while (!plik.eof())
  43. {
  44. getline(plik, numerUbezpieczenia, ';');
  45. getline(plik, imie, ';');
  46. getline(plik, nazwisko, ';');
  47. getline(plik, adresEmail, ';');
  48. getline(plik, plec, ';');
  49. getline(plik, adresIP, ';');
  50. plik >> rozmiarButa;
  51. getline(plik, ulubionyLek, ';');
  52. getline(plik, ulubionaPoezja );
  53. Poddany nowy = { numerUbezpieczenia, imie, nazwisko, adresEmail,plec,adresIP,rozmiarButa,ulubionyLek,ulubionaPoezja };
  54. poddani.push_back(nowy);
  55. }
  56. for (auto itr = poddani.begin(); itr != poddani.end(); itr++)
  57. {
  58. poddaniPosortowani.push_back(*itr);
  59. }
  60. sort(poddaniPosortowani.begin(), poddaniPosortowani.end(), porownajButy);
  61. for (auto itr = poddaniPosortowani.begin(); itr != poddaniPosortowani.end(); itr++)
  62. {
  63. cout << itr->rozmiarButa << endl;
  64. }
  65. int licznik = 0;
  66. cout << "adresy osob o najwiekszym rozmiarze buta:" << endl;
  67. for (auto itr = poddaniPosortowani.begin(); licznik<5; itr++)
  68. {
  69. cout << licznik + 1 << ". " << itr->adresEmail << "rozmiar: " << itr->rozmiarButa << endl;
  70. licznik++;
  71. }
  72. licznik = 0;
  73. cout << endl<< "adresy osob o najmniejszym rozmiarze buta:" << endl;
  74. for (auto itr = poddaniPosortowani.rbegin(); licznik<5; itr++)
  75. {
  76. cout << licznik + 1<<". " << itr->adresEmail << "rozmiar: " << itr->rozmiarButa << endl;
  77. licznik++;
  78. }
  79. int suma=0;
  80. for (auto itr = poddaniPosortowani.begin(); itr != poddaniPosortowani.end(); itr++)
  81. {
  82. suma += itr->rozmiarButa;
  83. }
  84. cout << "sredni rozmiar buta to: " << suma / poddaniPosortowani.size() << endl;
  85. system("pause");
  86. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement