第四次上机实践项目-项目1-三角形类椎体-(3)

来源:互联网 发布:php pdo bindvalue 编辑:程序博客网 时间:2024/04/30 04:53


问题及代码:

/*

*文件名称:

*作者:刘涛

完成日期:2016.3.25

*

*问题描述:三角形类椎体

*输入描述:三边边长

程序输出:面积,周长

*/

#include<iostream>
#include<cmath>
using namespace std;
class Triangle
{
public:
    Triangle(double x,double y,double z):a(x),b(y),c(z){}
    void setABC(double x,double y,double z);//设置三边的值,注意要能成三角形
    double perimeter();//计算三角形的周长
    double area();//计算并返回三角形的面积
    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;}
    void showMessage();//显示三角形信息
    bool isTriangle()
    {
        if(a+b>c&&b+c>a&&a+c>b)
            return true;
        else
            return false;
    }

private:
    double a,b,c;//三边为私有成员数据
};
int main()
{
    Triangle Tri(7,8,9);//定义三角形类的一个实例(对象)
    Tri.showMessage();//定义一个能显示三角形信息的成员函数
    return 0;
}

 void Triangle::setABC(double x,double y,double z)
 {
     if(x+y>z&&x+z>y&&y+z>x)
     {
     a=x;
     b=y;
     c=z;
     }
     cout<<"三边为:"<<a<<" "<<b<<" "<<c<<endl;
 }
 double Triangle::perimeter()
 {
     return a+b+c;
 }
  double Triangle::area()
  {
      double p;
      p=(a+b+c)/2;
      return sqrt(p*(p-a)*(p-b)*(p-c));
  }
  void Triangle:: showMessage()
  {
      cout<<"三条边为:"<<a<<","<<b<<","<<c<<endl;
      cout<<"三角形的周长为:"<<perimeter()<<"\t"<<"面积为:"<<area()<<endl;
  }
运行及结果:


0 0
原创粉丝点击