diff --git a/uczelnia/2_semestr/programowanie/laby/kol1 b/uczelnia/2_semestr/programowanie/laby/kol1 deleted file mode 100755 index 8e6cea8..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/kol1 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab3/8 b/uczelnia/2_semestr/programowanie/laby/lab3/8 deleted file mode 100755 index f2e2593..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab3/8 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab4/zad2_prak b/uczelnia/2_semestr/programowanie/laby/lab4/zad2_prak deleted file mode 100755 index 2e93a81..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab4/zad2_prak and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab5/out/1 b/uczelnia/2_semestr/programowanie/laby/lab5/out/1 deleted file mode 100755 index 85024cc..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab5/out/1 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab5/out/10 b/uczelnia/2_semestr/programowanie/laby/lab5/out/10 deleted file mode 100755 index cb6846b..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab5/out/10 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab5/out/3 b/uczelnia/2_semestr/programowanie/laby/lab5/out/3 deleted file mode 100755 index 2b6bd13..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab5/out/3 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab5/out/4 b/uczelnia/2_semestr/programowanie/laby/lab5/out/4 deleted file mode 100755 index df7a647..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab5/out/4 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab5/out/5 b/uczelnia/2_semestr/programowanie/laby/lab5/out/5 deleted file mode 100755 index 78ff424..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab5/out/5 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab5/out/6 b/uczelnia/2_semestr/programowanie/laby/lab5/out/6 deleted file mode 100755 index b1e826f..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab5/out/6 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab5/out/7 b/uczelnia/2_semestr/programowanie/laby/lab5/out/7 deleted file mode 100755 index 72b5dd2..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab5/out/7 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab5/out/8 b/uczelnia/2_semestr/programowanie/laby/lab5/out/8 deleted file mode 100755 index eb4c4ad..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab5/out/8 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab5/out/9 b/uczelnia/2_semestr/programowanie/laby/lab5/out/9 deleted file mode 100755 index e7e956c..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab5/out/9 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab6/out/1 b/uczelnia/2_semestr/programowanie/laby/lab6/out/1 deleted file mode 100755 index d07a0a6..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab6/out/1 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab6/out/10 b/uczelnia/2_semestr/programowanie/laby/lab6/out/10 deleted file mode 100755 index e043ac7..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab6/out/10 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab6/out/11 b/uczelnia/2_semestr/programowanie/laby/lab6/out/11 deleted file mode 100755 index c3d6ad6..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab6/out/11 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab6/out/12 b/uczelnia/2_semestr/programowanie/laby/lab6/out/12 deleted file mode 100755 index 90c7ed7..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab6/out/12 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab6/out/2 b/uczelnia/2_semestr/programowanie/laby/lab6/out/2 deleted file mode 100755 index 6c0147c..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab6/out/2 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab6/out/3 b/uczelnia/2_semestr/programowanie/laby/lab6/out/3 deleted file mode 100755 index d2a4f87..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab6/out/3 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab6/out/4 b/uczelnia/2_semestr/programowanie/laby/lab6/out/4 deleted file mode 100755 index a0c0368..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab6/out/4 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab6/out/5 b/uczelnia/2_semestr/programowanie/laby/lab6/out/5 deleted file mode 100755 index 4c67c8b..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab6/out/5 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab6/out/6 b/uczelnia/2_semestr/programowanie/laby/lab6/out/6 deleted file mode 100755 index a8843f6..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab6/out/6 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab6/out/7 b/uczelnia/2_semestr/programowanie/laby/lab6/out/7 deleted file mode 100755 index 93673a2..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab6/out/7 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab6/out/8 b/uczelnia/2_semestr/programowanie/laby/lab6/out/8 deleted file mode 100755 index 87f3402..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab6/out/8 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab6/out/9 b/uczelnia/2_semestr/programowanie/laby/lab6/out/9 deleted file mode 100755 index dcc63f9..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab6/out/9 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab7/out/1 b/uczelnia/2_semestr/programowanie/laby/lab7/out/1 deleted file mode 100755 index 8453402..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab7/out/1 and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab7/out/liczba b/uczelnia/2_semestr/programowanie/laby/lab7/out/liczba deleted file mode 100755 index 06ca96d..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab7/out/liczba and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab7/out/ulamki b/uczelnia/2_semestr/programowanie/laby/lab7/out/ulamki deleted file mode 100755 index 32cf855..0000000 Binary files a/uczelnia/2_semestr/programowanie/laby/lab7/out/ulamki and /dev/null differ diff --git a/uczelnia/2_semestr/programowanie/laby/lab9/zad10.cpp b/uczelnia/2_semestr/programowanie/laby/lab9/zad10.cpp index 7d372e8..e038dfb 100644 --- a/uczelnia/2_semestr/programowanie/laby/lab9/zad10.cpp +++ b/uczelnia/2_semestr/programowanie/laby/lab9/zad10.cpp @@ -32,10 +32,14 @@ class Biblioteka { public: Biblioteka(size_t size) : ksiazki(new Ksiazka[size]) {} + ~Biblioteka() { + delete[] ksiazki; + ksiazki = nullptr; + } void dodajKsiazke(Ksiazka k) { ksiazki[aktualna_ksiazka++] = k; } - Ksiazka *szukajPoTytule(std::string tytul) { + Ksiazka *szukajPoTytule(std::string tytul) const { for (int i = 0; i < aktualna_ksiazka; i++) { if (ksiazki[i].tytul == tytul) { return &ksiazki[i]; @@ -44,9 +48,9 @@ public: return nullptr; } - void wypiszWszystkie() { + void wypiszWszystkie() const { for (int i = 0; i < aktualna_ksiazka; i++) { - std::cout << ksiazki[i]; + std::cout << ksiazki[i] << '\n'; } } }; @@ -58,20 +62,29 @@ public: Osoba(std::string imie) : imie(imie) {} }; -class Czytelnik : Osoba { // dziedziczenie - Ksiazka *ksiazki; // agregacja +class Czytelnik : public Osoba { // dziedziczenie + Ksiazka *ksiazki; // agregacja const int max_ilosc; int aktualna_ilosc_ksiazek = 0; public: Czytelnik(std::string imie, size_t max_ilosc) : Osoba(imie), max_ilosc(max_ilosc), ksiazki(new Ksiazka[max_ilosc]) {} - void wypozycz(Ksiazka ksiazka) { - if (aktualna_ilosc_ksiazek < max_ilosc) { - ksiazki[aktualna_ilosc_ksiazek++] = ksiazka; - } + ~Czytelnik() { + delete[] ksiazki; + ksiazki = nullptr; } - void wypiszWszystkie() { + + void wypozycz(Biblioteka &biblioteka, std::string tytul) { + Ksiazka *ksiazka = biblioteka.szukajPoTytule(tytul); + if (!ksiazka) { + std::cout << "Nie znaleziono książki pt." << tytul << " w bibliotece!" + << std::endl; + return; + } + ksiazki[aktualna_ilosc_ksiazek++] = *ksiazka; + } + void wypiszWszystkie() const { for (int i = 0; i < aktualna_ilosc_ksiazek; i++) { std::cout << ksiazki[i]; } @@ -80,13 +93,16 @@ public: int main() { Biblioteka b = Biblioteka(12); - Ksiazka k1 = - Ksiazka("Ogniem i Mieczem", "1920", Autor("Henryk", "Sienkiewicz")); + std::string tytul = "Ogniem i mieczem"; + Ksiazka k1 = Ksiazka(tytul, "1920", Autor("Henryk", "Sienkiewicz")); b.dodajKsiazke(k1); - std::cout << "Książki biblioteki: "<< std::endl; + std::cout << "===\n"; + std::cout << "Książki biblioteki: " << std::endl; b.wypiszWszystkie(); Czytelnik czytelnik = Czytelnik("Bogdan", 8); - std::cout << "Książki czytelnika: "<< std::endl; - czytelnik.wypozycz(k1); + std::cout << "===\n"; + std::cout << "Książki czytelnika: " << std::endl; + czytelnik.wypozycz(b, tytul); + czytelnik.wypozycz(b, "Hobbit"); czytelnik.wypiszWszystkie(); } diff --git a/uczelnia/2_semestr/programowanie/laby/lab9/zad8.cpp b/uczelnia/2_semestr/programowanie/laby/lab9/zad8.cpp index d491386..9835b81 100644 --- a/uczelnia/2_semestr/programowanie/laby/lab9/zad8.cpp +++ b/uczelnia/2_semestr/programowanie/laby/lab9/zad8.cpp @@ -11,7 +11,7 @@ public: class Pochodna : public Bazowa { public: Pochodna(int val) : Bazowa(val) {} - void wypisz() { std::cout << x << std::endl; } + void wypisz() const { std::cout << x << std::endl; } }; int main() { diff --git a/uczelnia/2_semestr/programowanie/laby/lab9/zad9.cpp b/uczelnia/2_semestr/programowanie/laby/lab9/zad9.cpp index f1d4ff7..374edca 100644 --- a/uczelnia/2_semestr/programowanie/laby/lab9/zad9.cpp +++ b/uczelnia/2_semestr/programowanie/laby/lab9/zad9.cpp @@ -29,11 +29,20 @@ public: class Biblioteka { Ksiazka *ksiazki; int aktualna_ksiazka = 0; + int const max_Ksiazki; public: - Biblioteka(size_t size) : ksiazki(new Ksiazka[size]) {} + Biblioteka(size_t size) : ksiazki(new Ksiazka[size]), max_Ksiazki(size) {} + ~Biblioteka() { + delete[] ksiazki; + ksiazki = nullptr; + } - void dodajKsiazke(Ksiazka k) { ksiazki[aktualna_ksiazka++] = k; } + void dodajKsiazke(Ksiazka k) { + if (aktualna_ksiazka < max_Ksiazki) { + ksiazki[aktualna_ksiazka++] = k; + } + } Ksiazka *szukajPoTytule(std::string tytul) { for (int i = 0; i < aktualna_ksiazka; i++) { @@ -46,7 +55,7 @@ public: void wypiszWszystkie() { for (int i = 0; i < aktualna_ksiazka; i++) { - std::cout << ksiazki[i]; + std::cout << ksiazki[i] << '\n'; } } };