Advertisement
Mandrah

zad3cw14

Jan 25th, 2018
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.73 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <cstdlib>
  4. #include <string>
  5.  
  6. using namespace std;
  7.  
  8. struct osoba{
  9.     string nazwisko;
  10.     string imie;
  11.     string miasto;
  12.     long nr_tel;
  13. };
  14. osoba s[4];
  15.  
  16. void wczytaj()
  17. {
  18.     fstream plik;
  19.     plik.open("zadanie3.dat", ios::binary | ios::in);
  20.     if(!plik.good())
  21.     {
  22.         cout<<"Nie otworze!"<<endl;
  23.         return;
  24.     }
  25.  
  26.     plik.seekp(38, ios_base::beg);
  27.     string nazwisko, imie, miasto, nr_tel;
  28.     for(int i = 0;;i++)
  29.     {
  30.         plik>>nazwisko;
  31.         plik>>imie;
  32.         plik>>miasto;
  33.         plik>>nr_tel;
  34.  
  35.         s[i].nazwisko = nazwisko;
  36.         s[i].imie = imie;
  37.         s[i].miasto = miasto;
  38.         s[i].nr_tel = atol(nr_tel.c_str());
  39.  
  40.         if(plik.eof()){
  41.             break;
  42.         }
  43.  
  44.         cout<<s[i].nazwisko<<" "<<s[i].imie<<" "<<s[i].miasto<<" "<<s[i].nr_tel<<endl;
  45.     }
  46.  
  47.     plik.close(); plik.clear();
  48. }
  49.  
  50. void sortuj()
  51. {
  52.     osoba pom;
  53.     for(int i = 0; i<4; i++)
  54.     {
  55.         for(int j = 0; j<3; j++)
  56.         {
  57.             if(s[j].miasto[0] > s[j+1].miasto[0])
  58.             {
  59.                 pom = s[j];
  60.                 s[j] = s[j+1];
  61.                 s[j+1] = pom;
  62.             }
  63.         }
  64.     }
  65.  
  66.     cout<<"Posrtowane rekordy: "<<endl;
  67.     for(int i = 1; i<4; i++)
  68.     {
  69.        cout<<s[i].nazwisko<<" "<<s[i].imie<<" "<<s[i].miasto<<" "<<s[i].nr_tel<<endl;
  70.     }
  71.  
  72.     fstream plik;
  73.     plik.open("zadanie3.dat", ios::binary | ios::out);
  74.  
  75.     plik<<"Nazwisko; imiê; Miasto; numer telefonu"<<endl;
  76.     for(int i = 1; i<4; i++)
  77.     {
  78.         plik<<s[i].nazwisko<<" "<<s[i].imie<<" "<<s[i].miasto<<" "<<s[i].nr_tel<<endl;
  79.     }
  80.  
  81.     plik.close();
  82. }
  83.  
  84. int main()
  85. {
  86.     wczytaj();
  87.     sortuj();
  88. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement