第十一周上机任务项目一
2013-05-10 11:11
260 查看
/* * Copyright (c) 2013, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作者:耿娜 * 完成日期:2013 年 5 月1 0日 * 版本号: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) {}; void PrintPoint();//输出点的信息 double x,y; }; void Point::PrintPoint() { cout<<"Point:("<<x<<","<<y<<")"; } class Line:public Point //利用坐标点类定义直线类,由基类的数据成员表示直线的中点 { public: Line(Point pts,Point pte):pt1(pts),pt2(pte) {};//构造函数,用初始化直线的两个端点及由基类数据成员描述的中点 double Length();//计算并返回直线的长度 void PrintLine1();//输出直线的1个中点 void PrintLine2();//输出直线的2个端点 private: class Point pt1,pt2;//直线的两个端点 }; double Line::Length() { double m; m=sqrt((pt1.x-pt2.x)*(pt1.x-pt2.x)+(pt1.y-pt2.y)*(pt1.y-pt2.y)); return m; } void Line::PrintLine1() { Point ptm; ptm.x=(pt1.x+pt2.x)/2; ptm.y=(pt1.y+pt2.y)/2; cout<<"("<<ptm.x<<","<<ptm.y<<")"; } void Line::PrintLine2() { cout<<"("<<pt1.x<<","<<pt1.y<<")"<<" "<<"("<<pt2.x<<","<<pt2.y<<")"; } int main() { Point ps(-2,5),pe(7,9); Line l(ps,pe); double d; d=l.Length(); cout<<"\n The length of Line:"; cout<<d<<endl; cout<<"\n The endpoint of Line:"; l.PrintLine2(); cout<<"\n The middle point of Line:"; l.PrintLine1(); cout<<endl; return 0; }
相关文章推荐
- 2013第十一周上机任务【项目1 三角形类 直线类】
- 第十一周上机任务——项目3:(1)输入一个正整数,判断其是否为一个素数
- 第十一周上机任务项目1
- 第十一周上机任务项目1:学会单步执行和调试程序
- 第十一周上机任务项目5-体验文件操作练习1
- 第十一周上机任务项目2
- 2013第十一周上机任务【项目2 三角形类 直线类】
- 第十一周上机任务项目3
- 第十一周上机任务项目4
- 第十一周上机任务项目5-体验文件操作练习2
- 第十一周上机任务项目5-体验文件操作
- 第十一周上机实践—项目1(2)—二叉树构造算法的验证
- 第九周上机任务项目1:分段函数求值
- 第八周上机任务项目1-1用类的成员函数完成运算符重载
- 第十一周上机实践项目4——类族的设计(2)
- 第十周上机任务项目五--贪财的富翁
- 第十一周上机任务4-大奖赛评分
- 第一周上机任务项目3成绩
- 第十一周上机任务(换分币)
- 第十三周上机任务-项目3(扩展-求出移动盘子的次数)-汉诺塔