第三周项目三——程序的多文件组织

主文件main.cpp

#include <iostream>
#include "triangle.h"
using namespace std;
int main()
{
    Triangle t;   //定义三角形类的一个实例(对象)
    double x,y,z;
    cout<<"请输入三角形的三边:";
    cin>>x>>y>>z;
    t.setA(x);
    t.setB(y);
    t.setC(z);   //为三边置初值
    if(t.isTriangle())
    {
        cout<<"三条边为:"<<t.getA()<<','<<t.getB()<<','<<t.getC()<<endl;
        cout<<"三角形的周长为:"<<t.perimeter()<<'\t'<<"面积为:"<<t.area()<<endl;
    }
    else
        cout<<"不能构成三角形。"<<endl;
    return 0;
}


头文件triangle.h:

#ifndef TRIANGLE_H_INCLUDED
#define TRIANGLE_H_INCLUDED
class Triangle
{
public:
    void setA(double x)
    {
        a=x;
    }
    void setB(double y)
    {
        b=y;
    }
    void setC(double z)
    {
        c=z;
    }
    double getA(void)
    {
        return a;
    }
    double getB(void)
    {
        return b;
    }
    double getC(void)
    {
        return c;
    }
    bool isTriangle();   //判断是否构成三角形
    double perimeter(void);   //计算三角形的周长
    double area(void);     //计算并返回三角形的面积
private:
    double a,b,c;   //三边为私有成员数据
};


#endif // TRIANGLE_H_INCLUDED


类定义文件:

#include "triangle.h"
#include <cmath>

bool Triangle::isTriangle()
{
    if(a+b>c&&b+c>a&&a+c>b)
        return 1;
    else
        return 0;
}
double Triangle::perimeter(void)
{
    int sum;
    sum=a+b+c;
    return sum;
}
double Triangle::area(void)
{
    double p,s;
    p=(a+b+c)/2;
    s=sqrt(p*(p-a)*(p-b)*(p-c));
    return s;
}


运行结果:

第三周项目三——程序的多文件组织_第1张图片

你可能感兴趣的:(C++,类,namespace,对象,Class)