#include #include #include using namespace std; template void Swaper(T & a, T & b) { T temp = a; a = b; b = temp; } class Bryla { private: public: virtual double Objetosc() = 0; }; class Kula : public Bryla { private: int r; public: Kula(int r = 0) { this->r = r; } virtual double Objetosc() { return 3.14 * r * r * r * 4 / 3.0; } }; class Szescian : public Bryla { private: int a; public: Szescian(int a = 0) { this->a = a; } virtual double Objetosc() { return a * a * a; } }; int main() { vector vectorek; vectorek.push_back(new Kula(5)); vectorek.push_back(new Szescian(6)); vectorek.push_back(new Kula(7)); vectorek.push_back(new Szescian(1)); int sum = 0; for(int i = 0; i < vectorek.size(); ++i) { sum += vectorek[i]->Objetosc(); } double average = static_cast (sum) / vectorek.size(); cout << "srednia objetosc = " << average << endl; int a = 5, b = 1; Swaper(a,b); cout << a << ", " << b; return 0; }