Головна » Статті » С++ » Приклади програм

Об'єм фігур з віртуальними функціями
Дано паралелепіпед, тетраедр та кулю. Для даних фігур потрібно створити класи, що наслідують віртуальну функцію, і реалізувати в них вивід їх об'ємів.
#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");
}
Категорія: Приклади програм | Додав: Lord_Adwond (13-06-2018)
Переглядів: 249 | Рейтинг: 0.0/0
Всього коментарів: 0
avatar