第六周项目3-多文件组织
2014-04-05 16:08
127 查看
/* * 程序的版权和版本声明部分 * Copyright (c)2013, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称:.cpp * 作 者:王英华 * 完成日期:2014年4月 4日 * 版本号: v1.0 * 输入描述: * 问题描述: */ #include<iostream> #include<cmath> using namespace std; CPoint:: CPoint(double xx,double yy) { x=xx,y=yy; } double CPoint::Distance(CPoint p) const { int m; m=sqrt((p.x-x)*(p.x-x)+(p.y-y)*(p.y-y)); return m; }
p,h
#ifndef P_H_INCLUDED #define P_H_INCLUDED class CPoint { private: double x; // 横坐标 double y; // 纵坐标 public: CPoint(double xx=0,double yy=0); double Distance(CPoint p) const; // 两点之间的距离(一点是当前点,另一点为参数p) void input(); //以x,y 形式输入坐标点 void output(); //以(x,y) 形式输出坐标点 }; #endif // P_H_INCLUDEDps.h
#ifndef PS_H_INCLUDED #define PS_H_INCLUDED class CTriangle { public: CTriangle(CPoint &X,CPoint &Y,CPoint &Z):A(X),B(Y),C(Z) {} //给出三点的构造函数 void setTriangle(CPoint &X,CPoint &Y,CPoint &Z);// double perimeter(void);//计算三角形的周长 double area(void);//计算并返回三角形的面积 bool isRightTriangle(); //是否为直角三角形 bool isIsoscelesTriangle(); //是否为等腰三角形 private: CPoint A,B,C; //三顶点 }; #endif // PS_H_INCLUDED
.cpp
void CTriangle::setTriangle(CPoint &X,CPoint &Y,CPoint &Z) { A=X; B=Y; C=Z; } double CTriangle::perimeter(void) { double n; n=(A.Distance(B)+B.Distance(C)+C.Distance(A)); return n; } double CTriangle::area(void) { double AB=A.Distance(B), BC=B.Distance(C), AC=A.Distance(C); double p=(AB+BC+AC)/2; double s; s=sqrt(p*(p-AB)*(p-BC)*(p-AC)); return s; } bool CTriangle::isRightTriangle() { float AB=A.Distance(B), BC=B.Distance(C), AC=A.Distance(C); return((AB*AB+BC*BC==AC*AC)||(AB*AB+AC*AC==BC*BC)||(AC*AC+BC*BC == AB*AB))?true:false; } bool CTriangle::isIsoscelesTriangle() { double AB=A.Distance(B), BC=B.Distance(C), AC=A.Distance(C); return (AB==AC||AB==BC||AC==BC)?true:false; } int main() { CPoint X(0,4),Y(3,0),Z(0,0); CTriangle s(X,Y,Z); cout<<"三角形的周长为:"<<s.perimeter()<<"三角形的面积为:"<<s.area()<<endl; cout<<"三角形"<<(s.isRightTriangle()?"是":"不是")<<"直角三角形"<<endl; cout<<"三角形"<<(s.isIsoscelesTriangle()?"是":"不是")<<"等腰三角形"<<endl; return 0; }
相关文章推荐
- 第六周上机实践项目——用多文件组织多个类的程序
- 第六周项目四----用点类做成员的三角形类以及多文件组织的三角形类
- 第六周项目28-用多文件组织多个类的程序(带武器的角色类)
- 第六周项目三用多文件组织多个类的程序
- 第六周项目三用多文件组织多个类的程序
- 第六周项目3用多文件组织多个类的程序
- 第六周(项目三)——用多文件组织多个类的程序。
- 第六周 项目3 用多文件组织多个类的程序
- 第六周项目3-用多文件组织多个类的程序
- 第六周项目三——用多文件组织多个类的程序
- 第二学期第六周项目3--用多文件组织多个类的程序
- 第二周项目三 程序的多文件组织
- 第七周项目3-用多文件组织多个类的程序1.game.h:类声明
- 第三周项目三程序的多文件组织
- 第11周项目1.2(补)输出点阵+多文件组织
- 第2周项目2-程序的多文件组织
- 第二周项目2-程序的多文件组织
- 第二周项目2-程序的多文件组织
- 第二周项目二 - 程序的多文件组织
- 第二周项目2-程序的多文件组织