三角形类雏形2

来源:互联网 发布:乐乎pt被关了 编辑:程序博客网 时间:2024/06/01 13:12
#include<iostream>  
#include<cmath>  
using namespace std;  
class triangle  
{  
public:  
    void setA(double x)  
    {  
        a=x;  
    }  
    void setB(double y)  
    {  
        b=y;  
    }  
    void setC(double z)  
    {  
        c=z;  
    }  
    double getA()  
    {  
        return a;  
    }  
    double getB()  
    {  
        return b;  
    }  
    double getC()  
    {  
        return c;  
    }  
    bool isTriangle()  
    {  
        if(a+b>=c&&b+c>=a&&a+c>=b)  
            return true;  
        else  
            return false;  
    }  
    double perimeter();  
    double area();  
private:  
    double a,b,c;  
};  
double triangle::perimeter()  
{  
    return a+b+c;  
}  
double triangle::area()  
{  
    double x=(a*a+b*b-c*c)/(2*a*b);  
        return (a*b*sqrt(1-x*x))/2;  
}  
int main()  
{  
    triangle tri1;  
    double x,y,z;  
    cout<<"请输入三角形的三边:";  
    cin>>x>>y>>z;  
    tri1.setA(x);  
    tri1.setB(y);  
    tri1.setC(z);  
    if(tri1.isTriangle())  
    {  
        cout<<"三条边为:"<<tri1.getA()<<','<<tri1.getB()<<','<<tri1.getC()<<endl;  
        cout<<"三角形的周长为:"<<tri1.perimeter()<<'\t'<<"面积为:"<<tri1.area()<<endl;  
    }  
    else  
        cout<<"不能构成三角形。"<<endl;  
    return 0;  
}  
0 0
原创粉丝点击