Zadanie z C++ Funkcje zaprzyjaźnione i przyjaźń między klasami

Stwórz dwie klasy: Samochod oraz Silnik.
Składowe klasy Samochod: marka, cena.
Składowe klasy Silnik: rodzaj, pojemnosc.
Zaprzyjaźnij obie klasy ze sobą, zwartosciuj składowe klasy silnik poprzez metodę setSilnik() w klasie Samochod.
Zwartościuj składowe klasy Samochod poprzez metodę setSamochod() w klasie Samochod.
Stwórz metodę w klasie Samochod, która wyświetli wszystkie składowe samochodu i silnika.
W programie głównym nadaj oraz wyświetl właścoiwości obiektów.


Odpowiedź :

Odpowiedź:

#include<iostream>

#include<string>

using namespace std;

class Silnik

{

   string rodzaj;

   double pojemnosc;

public:

   void setSilnik(string _rodzaj, double _pojemnosc);

   friend class Samochod;

};

void Silnik::setSilnik(string _rodzaj, double _pojemnosc)

{

   rodzaj = _rodzaj;

   pojemnosc = _pojemnosc;

}

class Samochod

{

   string marka;

   int cena;

public:

   Silnik silnik;

   void setSamochod(string _marka, double _cena);

   void wyswietlDane();

   friend class Silnik;

};

void Samochod::setSamochod(string _marka, double _cena)

{

   marka = _marka;

   cena = _cena;

}

void Samochod::wyswietlDane()

{

   cout<<"Marka: "<<marka<<'\n';

   cout<<"Cena: "<<cena<<'\n';

   cout<<"Rodzaj silnika: "<<silnik.rodzaj<<'\n';

   cout<<"Pojemnosc silnika: "<<silnik.pojemnosc<<'\n';

}

int main()

{

   Samochod samochod;

   samochod.setSamochod("Volkswagen",20000);

   samochod.silnik.setSilnik("Diesel", 3.0);

   samochod.wyswietlDane();

   return 0;

}