第六周实验报告5
来源:互联网 发布:阿里巴巴比淘宝 编辑:程序博客网 时间:2024/05/17 03:33
任小宁
2012、3、28
cpoint.cpp
#include<iostream>#include"CTriangle.h"double CPoint::getx(){ return x;}double CPoint::gety(){ return y;}CPoint::CPoint(double xx,double yy){ x=xx; y=yy;}
ctriangle.cpp
#include<iostream>#include"CTriangle.h"#include<cmath>void CTriangle::Distance(CPoint &p,CPoint &q) {bian[i]=sqrt((p.getx()-q.getx())*(p.getx()-q.getx())+(p.gety()-q.gety())*(p.gety()-q.gety()));++i;}float CTriangle::Distance1(CPoint &p,CPoint &q) {bian[i]=(p.getx()-q.getx())*(p.getx()-q.getx())+(p.gety()-q.gety())*(p.gety()-q.gety());++i;return bian[i-1];}float CTriangle::perimeter(void)//计算三角形的周长{float s=0;--i;s=s+bian[i]+bian[i-1]+bian[i-2];return s;}float CTriangle::area(void)//计算并返回三角形的面积{ float s,m; int i=0; m=(bian[i]+bian[i+1]+bian[i+2])/2; s=sqrt(m*(m-bian[i])*(m-bian[i+1])*(m-bian[i+2])); return s; }void CTriangle::isRightTriangle()//是否为直角三角形{ i=0;float m,n,c;m=Distance1(A,B);n=Distance1(A,C);c=Distance1(B,C);//m=bian[i];//n=bian[i+1];//c=bian[i+2];if((m+n)==c||(m+c)==n||(c+n)==m){cout<<"此三角形为直角三角形"<<endl;}else{cout<<"此三角形不是直角三角形"<<endl;}}void CTriangle::isIsoscelesTriangle() //是否为等腰三角形{float m,n,c; i=0;m=bian[i];n=bian[i+1];c=bian[i+2];if(m==n||m==c||n==c){cout<<"此三角形为等腰三角形"<<endl;}else{cout<<"此三角形不是等腰三角形"<<endl;}}void CTriangle::setTriangle(CPoint &X,CPoint &Y,CPoint &Z){A=X;B=Y;C=Z;}
ctriangle.h
using namespace std;class CPoint{private:double x; // 横坐标double y; // 纵坐标 public:CPoint(double xx=0,double yy=0);double getx();double gety();};class CTriangle{public:CTriangle(CPoint &X,CPoint &Y,CPoint &Z,int i=0):A(X),B(Y),C(Z),i(i){} //给出三点的构造函数void setTriangle(CPoint &X,CPoint &Y,CPoint &Z);float perimeter(void);//计算三角形的周长float area(void);//计算并返回三角形的面积void isRightTriangle(); //是否为直角三角形void isIsoscelesTriangle(); //是否为等腰三角形void Distance(CPoint &p,CPoint &q) ; // 两点之间的距离(一点是当前点,另一点为参数p)float CTriangle::Distance1(CPoint &p,CPoint &q);private:CPoint A,B,C; //三顶点float bian[3];int i;};
main.cpp
#include<iostream>#include"CTriangle.h"using namespace std;void main(){CPoint c1(0,0),c2(0,1),c3(1,0);CTriangle m(c1,c2,c3);m.setTriangle(c1,c2,c3);m.Distance(c1,c2);m.Distance(c1,c3);m.Distance(c2,c3);cout<<"三角形的周长为:"<<m.perimeter()<<endl;//计算三角形的周长cout<<"三角形的面积为:"<<m.area()<<endl;//计算并返回三角形的面积m.isRightTriangle(); //是否为直角三角形m.isIsoscelesTriangle(); //是否为等腰三角形system("PAUSE");}
- 第六周实验报告5
- 第六周实验报告5
- 第六周实验报告5
- 第六周实验报告5
- 第六周实验报告
- 第六周实验报告(5)
- 第六周实验报告(任务5)
- 第六周实验报告(5)
- 第六周实验报告任务5
- 第六周实验报告任务5
- 第六周C++实验报告
- C++第六周实验报告
- 第六周实验报告1
- 第六周实验报告1
- 第六周实验报告1
- 第六周实验报告1
- 第六周实验报告1
- 第六周实验报告1
- Android需不需要手动退出
- 常用正则表达式
- 单精度与双精度问题
- java递归常见的面试题
- 按钮的消息响应--就是设置函数
- 第六周实验报告5
- jboss服务器目录结构
- 递归
- 关于WDM驱动开发的不错资料(来自codeproject)
- jquery插件实现手风琴效果!
- C语言编写自己的对数函数
- 第一篇
- jquery插件之弹出对话框效果
- iPhone,iPhone4,iPad程序启动画面的总结