Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <fstream>
- using namespace std;
- // struktury
- struct Pracownik
- {
- // pola:
- string imie;
- string nazwisko;
- int wiek;
- char plec;
- double placa;
- };
- unsigned wielkosc_tablicy = 0;
- void sortuj_wedlug_wieku(Pracownik* pracownicy)
- {
- for(unsigned i = 0; i < wielkosc_tablicy; i++)
- {
- for(unsigned j = 0; j < wielkosc_tablicy - i; i++)
- {
- if(pracownicy[j].wiek > pracownicy[j + 1].wiek)
- swap(pracownicy[j], pracownicy[j + 1]);
- }
- }
- }
- void wypisz_dane(Pracownik pracownik)
- {
- cout << pracownik.imie << " " << pracownik.nazwisko << ", ";
- if(pracownik.plec == 'm')
- cout << "mezczyzna, ";
- else
- cout << "kobieta, ";
- cout << "lat " << pracownik.wiek << ", zarabia " << pracownik.placa << " PLN miesiecznie" << endl;
- }
- Pracownik* dodaj_pracownika(Pracownik* pracownicy)
- {
- Pracownik* temp = new Pracownik[wielkosc_tablicy + 1];
- for(unsigned i = 0; i < wielkosc_tablicy; i++)
- {
- temp[i] = pracownicy[i];
- }
- ++wielkosc_tablicy;
- delete[] pracownicy;
- return temp;
- }
- void wpisz_dane_pracownika(Pracownik* pracownicy, Pracownik nowy)
- {
- pracownicy[wielkosc_tablicy - 1].imie = nowy.imie;
- pracownicy[wielkosc_tablicy - 1].nazwisko = nowy.nazwisko;
- pracownicy[wielkosc_tablicy - 1].wiek = nowy.wiek;
- pracownicy[wielkosc_tablicy - 1].plec = nowy.plec;
- pracownicy[wielkosc_tablicy - 1].placa = nowy.placa;
- }
- int main()
- {
- Pracownik* pracownicy;
- Pracownik nowy;
- pracownicy = new Pracownik[wielkosc_tablicy];
- ifstream plik;
- plik.open("plik.txt");
- if(plik.good())
- {
- while(!plik.eof()) // eof() zwraca true jeśli znajdujemy się na końcu pliku
- {
- plik >> nowy.imie >> nowy.nazwisko >> nowy.wiek >> nowy.plec >> nowy.placa;
- pracownicy = dodaj_pracownika(pracownicy);
- wpisz_dane_pracownika(pracownicy, nowy);
- }
- }
- plik.close();
- for(unsigned i = 0; i < wielkosc_tablicy; ++i)
- wypisz_dane(pracownicy[i]);
- delete[] pracownicy;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement