第五周 项目3 将项目2保存在多个文件
2015-04-12 15:25
120 查看
问题及代码:
/*。 *Copyright(c)2014,烟台大学计算机学院 *All right reserved, *文件名:test.cpp *作者:liu_feng_zi_ *完成日期:2015年4月12日 *版本号:v1.0 * 问题描述: *输入描述: *程序输出: */ main.cpp: #include <iostream> #include "head.h" using namespace std; int main() { CPoint X(2,5),Y(5,2),Z(7,8); CTriangle Tri1(X,Y,Z); //定义三角形类的一个实例(对象) cout<<"该三角形的周长为:"<<Tri1.perimeter()<<",面积为:"<<Tri1.area()<<endl; cout<<"该三角形"<<(Tri1.isRightTriangle()?"是":"不是")<<"直角三角形"<<endl; cout<<"该三角形"<<(Tri1.isIsoscelesTriangle()?"是":"不是")<<"等腰三角形"<<endl<<endl;; CPoint H(1,1),M(1,2),N(2,1); CTriangle Tri2(H,M,N); //定义三角形类的一个实例(对象) cout<<"该三角形的周长为:"<<Tri2.perimeter()<<",面积为:"<<Tri2.area()<<endl; cout<<"该三角形"<<(Tri2.isRightTriangle()?"是":"不是")<<"直角三角形"<<endl; cout<<"该三角形"<<(Tri2.isIsoscelesTriangle()?"是":"不是")<<"等腰三角形"<<endl; return 0; } function1,cpp: #include <iostream> #include "head.h" #include <cmath> using namespace std; CPoint::CPoint(double xx=0,double yy=0) { x=xx; y=yy; } double CPoint::Distance1(CPoint p)const { return sqrt((p.x-x)*(p.x-x)+(p.y-y)*(p.y-y)); } void CPoint::input() { cout<<"请按照“x,y”的格式输入坐标点:"; char n; cin>>x>>n>>y; } function2.cpp: #include <iostream> #include "head.h" #include <cmath> using namespace std; void CTriangle::setTriangle(CPoint &X,CPoint &Y,CPoint &Z) { A=X; B=Y; C=Z; } float CTriangle::perimeter(void) { float a=A.Distance1(B),b=B.Distance1(C),c=C.Distance1(A); return a+b+c; } float CTriangle::area(void) { float a=A.Distance1(B),b=B.Distance1(C),c=C.Distance1(A); float p=(a+b+c)/2; return sqrt(p*(p-a)*(p-b)*(p-c)); } bool CTriangle::isRightTriangle()//是否为直角三角形 { double a=B.Distance1(C),b=C.Distance1(A),c=A.Distance1(B); double max=a; if(b>max) max=b; if(c>max) max=c; if(((max==a)&&(abs(a*a-b*b-c*c)<1e-7))||((max==b)&&(abs(b*b-a*a-c*c)<1e-7))||((max==c)&&(abs(c*c-b*b-a*a)<1e-7))) return true; else return false; } bool CTriangle::isIsoscelesTriangle() { float a=A.Distance1(B),b=B.Distance1(C),c=C.Distance1(A); if(a==b||b==c||c==a) return true; else return false; } head.h: #ifndef HEAD_H_INCLUDED #define HEAD_H_INCLUDED class CPoint { private: double x; // 横坐标 double y; // 纵坐标 public: CPoint(double xx,double yy); double Distance1(CPoint p) const; //两点之间的距离(一点是当前点——想到this了吗?,另一点为p) void input(); //以x,y 形式输入坐标点 }; class CTriangle { public: CTriangle(CPoint &X,CPoint &Y,CPoint &Z):A(X),B(Y),C(Z){};//给出三点的构造函数 void setTriangle(CPoint &X,CPoint &Y,CPoint &Z);// float perimeter(void);//计算三角形的周长 float area(void);//计算并返回三角形的面积 bool isRightTriangle(); //是否为直角三角形 bool isIsoscelesTriangle(); //是否为等腰三角形 private: CPoint A,B,C; //三顶点 }; #endif // HEAD_H_INCLUDED
相关文章推荐
- 将值保存在项目资源文件中
- 项目里有个js文件不让保存,编码是ISO-xx,不让保存
- BBS项目之修改之后的htm文件保存不了,报错:Save could not be completed
- 加入log4j.properties项目运行日志管理,将日志文件保存在硬盘文件夹中
- C#项目打开/保存文件夹/指定类型文件,获取路径
- 解决方案看起来是受源代码管理,但无法找到它的帮定信息.保存解决方案的源代码管理设置的MSSCCPRJ.SCC文件或其他项可能己被删除.由于无法自动恢复这些缺少的信息,缺少帮定的项目将被视为不受源代码管理.
- 15周【项目2-用文件保存的学生名单】
- 将项目中图片文件保存到SD卡中
- java web项目用属性文件保存数据库参数
- android应用面试宝典(上);公共基类管理公共头尾页;公共activity的参数问题;SQLite存数据;前提先将txt数据保存在项目的assets文件下;
- android小项目总结之文件保存
- VC++项目开发笔记——打开或保存指定类型的文件CFileDialog类
- android项目中如何获取assets下面的文件在SD卡上面的保存路径
- Myeclipse中如何做到保存一个文件不要编译整个项目
- C#项目打开/保存文件夹/指定类型文件,获取路径
- 在线打开、保存非Web项目目录下的文件
- 文件处理_项目中用到_保存版
- VS2010无法保存项目文件(.csprj)的问题解决方法
- 设置eclipse在编译运行项目之前自动保存修改的文件
- 第十五周项目2-文件保存不挂科学生信息