Új hozzászólás Aktív témák

  • umek7

    őstag

    C++, a megoldásom félkész és valószínűleg sok helyen hibás. A feladat:

    Hozz létre egy Virág osztályt. Az adattagok legyenek: név (string), fagyástűrés (string (igen, nem, közepes), magasság (egész szám cm-ben).
    Tiszta virtuális metódus: AtlagDarabszam, mely kiszámítja a darabszámok átlagát. Ez alapján eldönthető minden virág esetében, hogy sok van belőle, közepes vagy kevés. Szükséges kiíró alprogram is.
    - Származtass a Virág osztályból egy Tulipán utódosztályt, az öröklődött adattagokon kívül legyen egy új virtuális adattagja: szín (string)
    - Származtass a Virág osztályból egy Nárcisz utódosztályt, az öröklődött adattagokon kívül legyen egy új virtuális adattagja: darab (egész szám)
    - Írd ki a tulipán és nárcisz adatait.

    class Virag {

    protected:
    string nev;
    string fagytures;
    int magassag;
    int darab;

    public:

    Virag(string n, string f, int cm,int db){
    nev=n;
    fagytures=f;
    magassag=cm;
    darab=db;
    };

    virtual double AtlagDarabszam()=0;

    bool sok(){
    return darab > AtlagDarabszam();
    };
    };

    class Tulipan:public Virag {
    string szin;
    public:
    Tulipan(string n, string f, int cm, string sz,int db) : Virag(n,f,cm,db) {
    szin=sz;
    };

    double AtlagDarabszam(){
    return 10;
    };

    void kiir();
    };

    void Tulipan::kiir() {

    cout<<"Nev: "<<nev<<"\n";
    cout<<"Fagyturo: "<<fagytures<<"\n";
    cout<<"Magassag: "<<magassag<<" cm"<<"\n";
    cout<<"Szin: "<<szin<<"\n";
    cout<<"Darabszam: "<<(sok()? "Sok van belole!":"Keves van belole!"); }

    class Narcisz:public Virag {
    public:
    Narcisz(string n, string f, int cm, int db) : Virag(n,f,cm,db) {
    };
    void kiir();

    double AtlagDarabszam(){
    return 11;
    };
    };

    void Narcisz::kiir() {

    cout<<"Nev: "<<nev<<"\n";
    cout<<"Fagyturo: "<<fagytures<<"\n";
    cout<<"Magassag: "<<magassag<<" cm"<<"\n";
    cout<<"Darabszam: "<<(sok() ? "Sok van belole!":"Keves van belole!"); }

    int main(int argc, char *argv[]) {

    Tulipan tulipan("Tulipan","igen",20,"kek",2);
    tulipan.kiir();

    cout<<"\n";
    cout<<"\n";

    Narcisz narcisz("Narcisz","nem",18,11);
    narcisz.kiir(); }

Új hozzászólás Aktív témák