第十一周-项目3-点类派生直线类
2014-05-14 19:54
148 查看
/* * 程序的版权和版本声明部分: * Copyright (c) 2013.烟台大学计算机学院。 * All rights reserved. * 文件名称: * 作 者:冯冬影 * 完成日期:2014 年 5月 14日 * 版 本 号:v1.0 * 对任务及求解方法的描述部分: * 输入描述: * 问题描述: * 程序输出: */ #include <iostream> #include <Cmath> using namespace std; class Point//定义坐标点类 { public : Point ():x(0),y(0){}; Point (double x0,double y0):x(x0),y(y0){}; double getX() { return x; } double getY() { return y; } void PrintPoint();//输出点的信息 protected: double x,y;//点的横坐标和纵坐标 }; void Point::PrintPoint() { cout<<"Point:("<<x<<","<<y<<")";//输出点 } class Line:public Point //利用坐标点类定义直线类,其基类的数据成员表示直线的中点 { public : Line (Point pts,Point pte):pts(pts),pte(pte) { x=(pte.getX()+pts.getX())/2; y=(pte.getY()+pts.getY())/2;//构造函数,用初始化直线的两个端点及有基类数据成员描述的中点 } double Length()//计算并返回直线的长度 { double a; a=sqrt((pts.getX()-pte.getX())*(pts.getX()-pte.getX())+(pts.getY()-pte.getY())*(pts.getY()-pte.getY())); return a; } void PrintLine()//输出直线的两个端点和直线长度 { pts.PrintPoint(); cout<<endl; pte.PrintPoint(); cout<<endl; cout<<"The Length of Line:"<<Length()<<endl; } private : class Point pts,pte;//直线的两个端点,从Point类继承的数据成员表示直线的中点 }; int main() { Point ps(-2,5),pe(7,9); Line l(ps,pe); cout<<"About the line:"<<endl; l.PrintLine();//输出直线l的信息:两端点及长度 cout<<"The middle point of Line is:"; l.PrintPoint();//输出直线l中点的信息 return 0; }
运行结果
相关文章推荐
- 第十一周项目3点类派生直线类
- 第十一周项目3——点类派生直线类
- 第十一周项目3--点类派生直线类
- 第十一周项目三 点类派生直线类
- 第十一周项目三--点类派生直线类
- 第十一周项目二——点类派生直线类
- 第十一周上机实践项目3——点类派生直线类
- 第十一周 项目 3 点类派生直线类
- 第十一周(项目三)——点类派生直线类 。
- 第十一周项目3-点类派生直线类
- 第十一周 项目3-点类派生直线类
- 第十一周项目3-点类派生直线类
- 第十一周上机项目三点类派生直线类
- 第十一周 项目 3 点类派生直线类 .
- 第十一周 项目3--点类派生直线类
- 第十一周上机项目4点类派生直线类
- 第十一周项目三:点类派生直线类
- 第十一周项目一——点类派生直线类
- 第十一周项目3:点类派生直线类
- 第十一周 课后实践:项目三——点类派生直线类