用多文件组织多个类的程序

问题及代码

main.cpp

/* * Copyright (c) 2015, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:辛彬 * 完成日期:2015 年 4 月 5 日 * 版 本 号:v1.0 * * 问题描述:设计一个三角形类(多文件)。 * 输入描述:平面坐标。 * 程序输出:面积、周长,并判断其是否为直角三角形和等腰三角形。 */#include <iostream>#include "cpointtriangle.h"using namespace std;int main(){CPoint a1,a2,a3;cout<<"输入第一个点:";a1.input();cout<<"输入第二个点:";a2.input();cout<<"输入第三个点:";a3.input();CTriangle a;a.setTriangle(a1,a2,a3);cout<<"三角形的周长为:"<<a.perimeter()<<endl;cout<<"面积为:"<<a.area()<<endl;if(a.isRightTriangle())cout<<"此三角形为直角三角形"<<endl;if(a.isIsoscelesTriangle())cout<<"此三角形为等腰三角形";return 0;}cpointtriangle.h

#ifndef CPOINTTRIANGLE_H_INCLUDED#define CPOINTTRIANGLE_H_INCLUDEDclass CPoint{private:double x; // 横坐标double y; // 纵坐标public:double Distance1(CPoint p) const; //两点之间的距离(一点是当前点——想到this了吗?,另一点为p)double Distance0() const;// 到原点(0,0)的距离void input(); //以x,y 形式输入坐标点void output(); //以(x,y) 形式输出坐标点};class CTriangle{public: void setTriangle(CPoint &X,CPoint &Y,CPoint &Z);// float perimeter(void);//计算三角形的周长 float area(void);//计算并返回三角形的面积 bool isRightTriangle(); //是否为直角三角形 bool isIsoscelesTriangle(); //是否为等腰三角形private: CPoint A,B,C; //三顶点 double a,b,c;};#endif // CPOINTTRIANGLE_H_INCLUDEDfun.cpp

#include <iostream>#include <cmath>#include "cpointtriangle.h"double CPoint::Distance1(CPoint p) const{double dx=x-p.x,dy=y-p.y;return sqrt(dx*dx+dy*dy);}double CPoint::Distance0() const{return sqrt(x*x+y*y);}void CPoint::input(){char e;double xx,yy;std::cin>>e>>xx>>e>>yy>>e;x=xx;y=yy;}void CTriangle::setTriangle(CPoint &X,CPoint &Y,CPoint &Z){A=X;B=Y;C=Z;}float CTriangle::perimeter(){double a,b,c;a=A.Distance1(B);b=B.Distance1(C);c=C.Distance1(A);return a+b+c;}float CTriangle::area(){double a,b,c;a=A.Distance1(B);b=B.Distance1(C);c=C.Distance1(A);double p=(a+b+c)/2;return sqrt(p*(p-a)*(p-b)*(p-c));}bool CTriangle::isRightTriangle(){double t;if(a>b){t=b;b=a;a=t;}if(b>c){t=c;c=b;b=t;}if(a*a+b*b==c*c)return true;else return false;}bool CTriangle::isIsoscelesTriangle(){if(a==b||a==c||b==c)return true;else return false;}

,人若软弱就是自己最大的敌人

用多文件组织多个类的程序

相关文章:

你感兴趣的文章:

标签云: