#include
using namespace std;
class Publikacija {
private:
int godina;
string naziv;
public:
Publikacija() {}
Publikacija(int _godina, string _naziv) {
godina = _godina;
naziv = _naziv;
}
int get_godina() {
return godina;
}
string get_naziv() {
return naziv;
}
};
class Kniga : public Publikacija {
private:
int broj_na_stranici;
public:
Kniga() : Publikacija() {}
Kniga(int _godina, string _naziv, int _broj_na_stranici) : Publikacija(_godina, _naziv) {
broj_na_stranici = _broj_na_stranici;
}
void printKniga() {
cout << "Kniga" << endl;
cout << get_naziv() << " " << get_godina() << " " << broj_na_stranici << endl;
}
};
class Vesnik : protected Publikacija {
private:
int reden_broj;
public:
Vesnik() : Publikacija() {}
Vesnik(int _godina, string _naziv, int _reden_broj) : Publikacija(_godina, _naziv) {
reden_broj = _reden_broj;
}
void print_vesnik() {
cout << "Vesnik" << endl;
cout << get_naziv() << " "<< get_godina() << " " << reden_broj << endl;
}
};
class DnevenVesnik : private Publikacija {
private:
int mesec;
public:
DnevenVesnik() : Publikacija() {}
DnevenVesnik(int _godina, string _naziv, int _mesec) : Publikacija(_godina, _naziv) {
mesec = _mesec;
}
void print_dneven() {
cout << "Dneven" << endl;
cout << get_naziv() << " " << get_godina() << " " << mesec << endl;
}
};
int main() {
Kniga *kniga = new Kniga(2020, "zlostrovsvo i kazna", 2000);
kniga->printKniga();
Vesnik *vesnik = new Vesnik(2020, "vest", 30);
vesnik -> print_vesnik();
DnevenVesnik *dn = new DnevenVesnik(2020, "vecer", 40);
dn->print_dneven();
return 0;
}