#include <iostream>
#include <string>
using namespace std;

const int PojBazy = 17;          		// pojemność bazy mierzona liczbą tytułów

struct ksiazka
 {
 	string tytul;
   string autor;
   int lEegz;                        // książka o cenie >= 100 to książka droga
   double cena;
   ksiazka(string, string, int, double);  //tytuł,autor,liczba egzemparzy, cena
   friend ostream& operator<<(ostream&, const ksiazka &);
 };

 class BazaKS
 {
 	int liczba_tytulow;              // liczba_tytulow <= PojBazy
   ksiazka TabKS[PojBazy];
  public:
   BazaKS();
   BazaKS(const BazaKS &);
   ~BazaKS(){};
   bool dodaj(ksiazka);
   int ile_tytulow(){ return liczba_tytulow;}
   int ile_egzemplarzy();           // l.egzemplarzy ogółem
   int ile_egzemplarzy(string);     // l.egzemplarzy danego tytułu
   double wartosc_ksiazek();
   TabKS tytuly_drogie(double cenaDrogiej);
   friend ostream& operator<<(ostream &, const  TabKS &);
 };

int main()
 {
   BazaKS Baza;
   // tworzymy "mini" bazę
   Baza.dodaj(ksiazka("Tajniki C++", "Aleksy od C++", 3, 135.50));
   //...
   TabKS Drogie = Baza.tytuly_drogie(100.);
   cout<< "W bazie jest "<<Baza.ile_tytulow()<<" tytulow ksiazek"
       << ", w tej liczbie jest  "
       << Drogie.ile_tytulow()<< " tytulow drogich"
       << endl;
   cout<< "Baza wszystkich ksiazek: "<<endl;
   cout<< Baza << endl;
   cout<< "Srednia cena ksiazki w bazie to "
       << Baza.wartosc_ksiazek()/Baza.ile_egzemplarzy()<<endl;
   cout<< "Baza ksiazek drogich: "<<endl;
   cout<< Drogie << endl;
   cout<< "Srednia cena ksiazki drogiej, to "
       << Drogie.wartosc_ksiazek()/Drogie.ile_egzemplarzy()<<endl;
   return 0;
 }

 BazaKS::BazaKS():liczba_tytulow(0)
 {}
 BazaKS::BazaKS(const BazaKS & bKS):liczba_tytulow(bKS.liczba_tytulow)
 {
   for(int k = 0;k<liczba_tytulow; ++k)
            TabKS[k] = bKS.TabKS[k];
 }
 bool BazaKS::dodaj(ksiazka KS)
 {
    bool mozna = False;
    if(liczba_tytulow<PojBazy)
    {
      mozna = True;
   	TabKS[liczba_tytulow] = KS;
   	++liczba_tytulow;
    }
    return mozna;
 }
















`

