Головна » Статті » С++ » Приклади програм |
Об'єм фігур з віртуальними функціями
Дано паралелепіпед, тетраедр та кулю. Для даних фігур потрібно створити класи, що наслідують віртуальну функцію, і реалізувати в них вивід їх об'ємів.
#include<iostream> #include<cstdlib> #include<iomanip> #include<cmath> using namespace std; class figure //абстрактний клас { public: float V; virtual void volume()=0; //чисто віртуальна функція }; class parallel:figure//паралелепіпед { float a; float b; float c; public: parallel(float aa, float bb, float cc) { a=aa; b=bb; c=cc; } void volume() { V=a*b*c; cout << V << endl; } }; class tetraedr:figure //тетраедр { float a; public: tetraedr(float aa) { a=aa; } void volume() { V=sqrt(2)*a*a*a/4; cout << V << endl; } }; class ball:figure //куля { float r; public: ball(float rr) { r=rr; } void volume() { V=4*M_PI*r*r*r/3; cout << V << endl; } }; int main() { float a, b, c; cout << setprecision(25); //25 чисел після коми cout << "Parallelepiped:" << endl; cout << "a="; cin >> a; cout << "b="; cin >> b; cout << "c="; cin >> c; parallel ob1(a, b, c); ob1.volume(); cout << "Tetraedr:" << endl; cout << "a="; cin >> a; tetraedr ob2(a); ob2.volume(); cout << "Ball:" << endl; cout << "r="; cin >> a; ball ob3(a); ob3.volume(); system("pause"); } | |
Переглядів: 249 | |
Всього коментарів: 0 | |