#pragma once #include <iostream> using namespace std; class Body { protected: double x, y, z; public: /*void set(double a, double b, double c) { x = a; y = b; z = c; };*/ virtual void wprowadz()=0; virtual void wyswietl()=0; virtual double pole() = 0; virtual double objetosc() = 0; Body(double x = 0.0, double y = 0.0, double z = 0.0) :x(x), y(y), z(z) {}; virtual ~Body() { cout << "kasowanie Ball" << endl; }; }; /////////////////////////////////////////////////////////////////////////////////// #pragma once #include "Body.h" using namespace std; class Ball : public Body { public: virtual void wprowadz() { cout << "podaj promien kuli" << endl; cin >> x; }; virtual void wyswietl() { cout << "kula o promieniu " << x << endl; }; virtual double pole() { cout << "pole powierzchni kuli o promieniu " << x << " "; return 4*3.14*x*x; }; virtual double objetosc() { cout << "objetosc kuli o promieniu " << x << " "; return 3.14*x*x*x*3/4; }; Ball(double x=0.0) :Body(x, 0, 0) {}; ~Ball() { cout << "kasowanie ball" << endl; }; }; ///////////////////////////////////////////////////////////////////// / laborka 6 klasy wirutalne.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "Body.h" #include "Ball.h" void policzpole(Body *x) { cout<<x->pole(); } int main() { Ball b1(3); Body *w; w = &b1; cout<<w->objetosc(); policzpole(w); system("pause"); return 0; } #include "stdafx.h" #include <iostream> #include "Shape.h" #include "Circle.h" #include "Rectangle.h" #include "triangle.h" #define N 3 int main() { ////////////////////////////////////////////////////////////////////////////// //MAIN WERSJA 1.O Shape *a; a = new Circle(2.5); a->print(); cout << a->obwod() << endl; cout << a->pole() << endl; delete a; ////////////////////////////////////////////////////////////////////////////// // //MAIN WERSJA 2.O //Shape *a[N]; //for (int i = 0; i < N; i++) // a[i] = NULL; //a[0] = new Circle(2.5); //a[0]->print(); //cout << a[0]->obwod() << endl; //cout << a[0]->pole() << endl; //a[1] = new Rectangle(5, 10); //a[1]->print(); //cout << a[1]->obwod() << endl; //cout << a[1]->pole() << endl; //for (int i = 0; i < N; i++) //{ // if (a[i]) delete a[i]; //} // /////////////////////////////////////////////////////////////////////////// //MAIN WERSJA 3.O /*Shape *a[N]; for (int i = 0; i < N; i++) a[i] = NULL; for (int i = 0; i < N; i++) { if (i % 3 == 0) a[i] = new Circle(2.5); if (i % 3 == 1) a[i] = new Rectangle(5, 10); if (i % 3 == 2) a[i] = new triangle(5,6,7); a[i]->print(); cout << a[i]->obwod() << endl; cout << a[i]->pole() << endl; } for (int i = 0; i < N; i++) { if (a[i]) delete a[i]; }*/ /////////////////////////////////////////////////////////////////////// system("pause"); return 0; }
GRZEHu77