点类派生直线类
来源:互联网 发布:知乎 父母的爱 编辑:程序博客网 时间:2024/05/22 00:05
上机内容:由点类派生直线类
上机目的:学习派生
我的程序:
/* * 程序的版权和版本声明部分: * 作 者:烟台大学计算机学院学生:段元晋* 完成日期:2013年5月25日* 版 本 号:vc++6.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(); //输出点的信息 double x,y; //数据成员,表示点的横坐标和纵坐标 }; void Point::PrintPoint() { cout<<"Point:("<<x<<","<<y<<")"; //输出点 } class Line: public Point //利用坐标点类定义直线类, 其基类的数据成员表示直线的中点 { public: Line(Point pts, Point pte); //构造函数,初始化直线的两个端点及由基类数据成员描述的中点,中点的坐标可以由端点坐标计算而来 double Length(); //计算并返回直线的长度 void PrintLine(); //输出直线的两个端点和直线长度 private: Point pts,pte; //直线的两个端点 }; //下面定义Line类的成员函数 Line::Line(Point pt1,Point pt2):Point((pt1.getX()+pt2.getX())/2,(pt1.getY()+pt2.getY())/2){pts=pt1;pte=pt2;}double Line::Length(){double dx=pts.getX()-pte.getX();double dy=pts.getY()-pte.getY();return sqrt(dx*dx+dy*dy);}void Line::PrintLine(){cout<<"端点1:";pts.PrintPoint();cout<<endl<<"端点2:";pte.PrintPoint();cout<<endl<<"直线的长度:";cout<<Length();}int main() { Point ps(-2,5),pe(7,9); Line l(ps,pe); l.PrintLine(); cout<<"\n The middle point of Line: "; l.PrintPoint();cout<<endl; return 0; }运行结果:
- 点派生类直线
- 点派生直线类
- 点类派生直线类
- 点类派生直线类
- 点类派生直线类
- 点类派生直线类
- 点类派生直线类
- 点类派生直线类
- 点类派生直线类
- 点类派生直线类
- 点类派生直线类
- 点类派生直线类
- 点类派生直线类
- 点类派生直线类
- 点类派生直线类
- 点类派生出直线类,直线类派生出圆类
- 定义点类派生出直线类
- 定义点类派生直线类2
- "unfortunately android keyboard has stopped“问题
- Arduino笔记四电子指南针罗盘HMC5883L
- 多级导航Menu的CSS
- 让MFC DLL 中的窗口响应PreTranslateMessage
- Java程序优化的一些最佳实践
- 点类派生直线类
- ubuntu环境下配置tomcat7.0.40环境
- oracle 基本语句
- select:windows pipe的模拟
- div+css基础——1.页面全局属性设置
- 数据库(1)
- orcale 基本语句
- 中语言版 linux操作系统项目正在筹备
- Java 各进制间的转换