第十一周项目一·项目二----定义点类
/*
* 程序的版权和版本声明部分
* Copyright (c)2013, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称: object.cpp
* 作者:赵晓晨
* 完成日期: 2013年05月10日
* 版本号: 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):pts(pts),pte(pte){};
double Length();
void PrintLine();
private:
class Point pts,pte;
};
//定义line类的成员函数
double Line::Length(){
return sqrt((pts.x-pte.x)*(pts.x-pte.x)+(pts.y-pte.y)*(pts.y-pte.y));
}
void Line::PrintLine(){
cout<<"point message:"<<(pts.x+pte.x)/2<<" "<<(pts.y+pts.y)/2<<endl;
}
//main函数进行测试
int main(){
Point ps(-2,5),pe(7,9);
Line l(ps,pe);
cout<<"\n The Length of Line";
cout<<l.Length()<<endl;
cout<<"\n The minddle point of Line";
l.PrintLine();
}
//定义line类的成员函数
#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(); //输出点的信息
private:
double x,y; //点的横坐标和纵坐标
};
void Point::PrintPoint()
{
cout<<"Point:("<<x<<","<<y<<")"; //输出点
}
class Line: public Point //利用坐标点类定义直线类, 其基类的数据成员表示直线的中点
{
public:
Line(Point pts, Point pte):pts(pts),pte(pte){}; //构造函数,用初始化直线的两个端点及由基类数据成员描述的中点
double Length(); //计算并返回直线的长度
void PrintLine(); //输出直线的两个端点和直线长度
private:
class Point pts,pte; //直线的两个端点
};
//构造函数,分别用初始化直线的两个端点及由基类数据成员(属性)描述的中点
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<<" 1st ";
pts.PrintPoint();
cout<<"\n 2nd ";
pte.PrintPoint();
cout<<"\n The Length of Line: "<<Length()<<endl;
}
int main()
{
Point ps(-2,5),pe(7,9);
Line l(ps,pe);
l.PrintLine();//输出直线l的信息
cout<<"\n The middle point of Line: ";
l.PrintPoint() ;//输出直线l中点的信息
return 0;
}
结果:
体会:用初始化表对其进行初始化。
对line进行定义。
第十一周项目一·项目二----定义点类相关推荐
- 第十周第十一周上机实践项目-项目5-摩托车继承自行车和机动车
/*copyright(c)2016.烟台大学计算机学院* All rights reserved,* 文件名称:text.Cpp* 作者:刘涛* 完成日期:2016年5月9日* 版本号:vc++6. ...
- Java基础知识(三十一)IO流(二) File类、递归、IO流基础
目录 一. File类 1.File: 2.构造方法: 3.创建功能 4.删除功能 5. 重命名功能 6.判断功能 7.基本获取功能 8.高级获取功能 9.需求: 二.递归 1.概述: 2. 递 ...
- Vue + Spring Boot 项目实战(二十一):缓存的应用
重要链接: 「系列文章目录」 「项目源码(GitHub)」 本篇目录 前言 一.缓存:工程思想的产物 二.Web 中的缓存 1.缓存的工作模式 2.缓存的常见问题 三.缓存应用实战 1.Redis 与 ...
- 【甄选靶场】Vulnhub百个项目渗透——项目二十一HACKLAB_VULNIX(NFS挂载,ssh毒化)
Vulnhub百个项目渗透 Vulnhub百个项目渗透--项目二十一:HACKLAB_VULNIX(NFS挂载,ssh毒化) 靶场地址
- 第十二周上机实践项目 项目1-实现复数类中的运算符重载 (2)
问题及代码: [项目-实现复数类中的运算符重载] (1)请用类的成员函数,定义复数类重载运算符+.-.*./,使之能用于复数的加减乘除 class Complex { public:Complex() ...
- 第十、十一周项目四 - 教师兼干部类
/**Copyright(c)2016,烟台大学计算机与控制工程学院*All rights reserved*文件名称:123.cpp*作 者:王蕊*完成日期:2016年5月10日*版 本 号:v1. ...
- 第十、十一周项目三-警察和厨师(1)
/**Copyright(c)2016,烟台大学计算机与控制工程学院*All rights reserved*文件名称:123.cpp*作 者:王蕊*完成日期:2016年5月7日*版 本 号:v1.0 ...
- 第十一周项目2--定义点类
/* * Copyright (c) 2011, 烟台大学计算机学院 * All rights reserved. * 作 者:王静 * 完成日期:2013 年 5 月 20 日 * 版 本 号:v1 ...
- 项目经理部的周例会中项目经理要做的事情
项目经理部的周例会中项目经理要做的事情 项目经理部,在建筑企业中是这样定义的:是企业为了完成某项建设工程施工任务而设立的组织.而不过,任何一家企业,一旦涉及到多个有内在联系的项目或者在建项目非常庞大, ...
- 学习Coding-iOS开源项目日志(二)
继续前篇:<学习Coding-iOS开源项目日志(一)>,接着本第二篇<学习Coding-iOS开源项目日志(二)>讲解Coding-iOS开源项目. 前言:作为初级程序员,想 ...
最新文章
- 【综述】介绍这些常用机器学习算法的优缺点
- vue 组件之间的传值
- C语言入门题-是不是太胖了 (10分)
- numpy基础(part5)--卷积
- 花式看超级碗 人工智能、大数据在碗里
- 配置SQL Server 2008 R2 Reporting Services
- C++中用TinyXML对XML文件进行解析
- RabbitMQ 功能
- 网页中常用加载页面的实现原理
- NLP学习(七)使用stanford实现句法分析-Python3实现
- 色彩对比广告设计_为什么我们都需要使用色彩对比检查器
- 一个项目从立项到终结
- L2-3 清点代码库 (25 分)(C/C++)
- 厨神之路八--煎炸类
- 045:魔兽世界三(开战) 程序设计实习MOOC / 程序设计与算法(三)测验题汇总(2020春季) 已经结束
- 《算法竞赛入门经典》Chap3
- 深度学习中mAP的含义
- select下拉框(支持筛选、多选)
- js几行代码搞定html转图片制作海报,html2canvas应用实例
- uboot移植(九)移植网卡DM9000
热门文章
- 世界上最好的磁盘碎片整理工具 OO Defrag
- 目标有价值,生活才有价值
- 创基Type-C扩展坞让客户享受到跟台式一样扩展的便捷舒适
- 我是正方选手,认为钱就是万恶之源。请帮我写一篇关于“钱到底是不是万恶之源”的辩论文章。...
- javaHttpClient 发送Http请求(模拟登陆)
- java培训-程序员怎样靠技术来延长职业周期
- Swift 语言指南-Issue 43
- Minecraft 1.20.x Forge模组开发 05.矿石生成
- python项目代码规范
- uvm_mem 模型 (1)