第六周项目2-对象作为数据成员
来源:互联网 发布:奇热漫画软件 编辑:程序博客网 时间:2024/05/17 03:14
/** 程序的版权和版本声明部分:* Copyright (c) 2013.烟台大学计算机学院。* All rights reserved.* 文件名称:体验常成员函数* 作 者:冯冬影* 完成日期:2014 年 4月 1 日* 版 本 号:v1.0* 对任务及求解方法的描述部分:* 输入描述:* 问题描述:* 程序输出:*/#include <iostream>#include<cmath>using namespace std;class CPoint{private: double x; double y;public : CPoint (double xx=0,double yy=0):x(xx),y(yy) {} double Distance(CPoint p) const ;//两点之间的距离(一点是当前点,另一点为参数p) void input();//输入坐标点};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);//计算并返回三角形的面积 float Bianchang();//计算三边长 bool isRightTriangle();//是否为直角三角形 bool isTriangle();//是否为三角形 bool isIsoscelesTriangle();//是否为等腰三角形private : CPoint A,B,C;//三顶点 double a,b,c;//三边长};void CPoint::input(){ cin>>x>>y;}double CPoint::Distance(CPoint p) const //两点之间的距离(一点是当前点,另一点为参数p){ return sqrt((x-p.x)*(x-p.x)+(y-p.y)*(y-p.y));}float CTriangle::Bianchang()//计算三边长{ a=A.Distance(B); b=A.Distance(C); c=B.Distance(C);}float CTriangle::perimeter(void)//计算三角形的周长{ return a+b+c;}float CTriangle::area(void)//计算并返回三角形的面积{ double l; l=(a+b+c)*0.5; return sqrt(l*(l-a)*(l-b)*(l-c));}bool CTriangle::isRightTriangle()//是否为直角三角形{ if(a*a+b*b==c*c||b*b+c*c==a*a||a*a+c*c==b*b) return true; else return false;}bool CTriangle::isTriangle()//是否为三角形{ if((a+b>c&&a-b<c)||(a+c>b&&a-c<b)||(b+c>a&&b-c<a)) return true; else return false;}bool CTriangle::isIsoscelesTriangle()//是否为等腰三角形{ if(a==b||a==c||b==c) return true; else return false;}void CTriangle::setTriangle(CPoint &X,CPoint &Y,CPoint &Z){ A=X; B=Y; C=Z;}int main(){ CPoint i,j,k; CTriangle t(i,j,k); cout<<"请输入三顶点的坐标:"; i.input(); j.input(); k.input(); t.setTriangle(i,j,k); t.Bianchang(); if(t.isTriangle()) { cout<<"三角形的周长为:"<<t.perimeter()<<endl; cout<<"三角形的面积为:"<<t.area()<<endl; if(t.isIsoscelesTriangle()) cout<<"是等腰三角形!"<<endl; else cout<<"不是等腰三角形!"<<endl; if(t.isRightTriangle()) cout<<"是直角三角形!"<<endl; else cout<<"不是直角三角形!"<<endl; } else cout<<"不能构成三角形!"<<endl; return 0;}
运行结果
0 0
- 第六周 项目2 对象作为数据成员
- 第六周 项目2 对象作为数据成员
- 第六周项目2-对象作为数据成员
- 第六周项目2-对象作为数据成员
- 第六周项目2-对象作为数据成员
- 第六周项目2-对象作为数据成员
- 第二学期第六周项目2--对象作为数据成员
- 第六周上机项目2-对象作为数据成员.
- 第六周项目二——对象作为数据成员
- 第六周项目二对象作为数据成员
- 第六周项目二对象作为数据成员
- 第六周 项目二 对象作为数据成员
- 第5周项目2-对象成员作为数据成员
- 第5周项目2-对象成员作为数据成员
- 第5周项目【项目2 - 对象作为数据成员】
- 第六周上机实践项目——对象作为数据成员
- 第六周(项目二)——对象作为数据成员。
- 第五周项目:对象作为数据成员
- 微信公众平台开发(二) 微信公众平台示例代码分析
- 如何在DataTemplate中处理事件Events
- 数据包接收系列 — IP协议处理流程(二)
- POJ 2096 Collecting Bugs (概率dp)
- 搭建Red5流媒体服务
- 第六周项目2-对象作为数据成员
- LUCI架构
- linux ioctl()函数
- 第三周-5
- OK6410下运行Qt程序glibc问题
- [jsp]Class.forName详解
- 个人总结管网系统的管理运维遇到的问题
- 使用JDBC模板更新数据库
- excel应用技巧