第五周 项目1-体验常成员函数
来源:互联网 发布:最新淘宝开店流程 编辑:程序博客网 时间:2024/06/15 06:30
#include "iostream"#include "Cmath"using namespace std;class CPoint{private: double x; // 横坐标 double y; // 纵坐标public: CPoint(double xx=0,double yy=0); double Distance1(CPoint p) const; // 两点之间的距离 double Distance0() const; // 到原点的距离 CPoint SymmetricAxis(char style) const; // 返回对称点 void input(); //以x,y 形式输入坐标点 void output(); //以(x,y) 形式输出坐标点};CPoint::CPoint(double xx,double yy){ x=xx; y=yy;}// 输入坐标点void CPoint::input(){ char ch; cout<<"请输入坐标点(格式x,y ):"; while(1) { cin>>x>>ch>>y; if (ch==',') break; cout<<"输入的数据格式不符合规范,请重新输入"; }}void CPoint::output(){ cout<<"("<<x<<", "<<y<<")"<<endl;}double CPoint::Distance1(CPoint p) const{ double d; d=sqrt((p.x-x)*(p.x-x)+(p.y-y)*(p.y-y)); return d;}double CPoint::Distance0() const{ double d; d=sqrt(x*x+y*y); return d;}CPoint CPoint::SymmetricAxis(char style) const{ CPoint p(this->x,this->y); switch(style) { case 'x': p.y=-y; break; case 'y': p.x=-x; break; case 'o': p.x=-x;p.y=-y; } return p;}int main( ){ double distance; CPoint p1,p2,p; cout<<"第1个点p1,"; p1.input(); cout<<"第2个点p2,"; p2.input(); distance=p1.Distance1(p2); cout<<"两点的距离为:"<<distance<<endl; distance=p1.Distance0(); cout<<"p1到原点的距离为:"<<distance<<endl; p=p1.SymmetricAxis('x'); cout<<"p1关于x轴的对称点为:"; p.output(); p=p1.SymmetricAxis('y'); cout<<"p1关于y轴的对称点为:"; p.output(); p=p1.SymmetricAxis('o'); cout<<"p1关于原点的对称点为:"; p.output(); return 0;}
发现有趣的事情,如果输入格式为 (1,1)会如图所示
0 0
- 第五周项目:体验常成员函数
- 第五周项目体验常成员函数
- 第五周 【项目1-体验常成员函数】
- 第五周项目1 体验常成员函数
- 第五周 【项目1-体验常成员函数】
- 第五周项目1体验常成员函数
- 第五周上机项目1体验常成员函数
- 第五周 项目1-体验常成员函数
- 第五周 项目1-体验常成员函数
- 第五周项目1-体验常成员函数
- 第五周【项目1-体验常成员函数】
- 第五周项目1-体验常成员函数
- 第五周上机实践项目1-体验常成员函数
- 第五周项目1体验常函数成员
- 第五周项目1 体验常成员函数
- 第五周项目1——体验常成员函数
- 第五周项目1-体验常成员函数
- 第五周项目1-体验常成员函数
- 寄存器变量
- 最小费用最大流算法
- LUA string库详解
- 线性表
- 割点和桥
- 第五周 项目1-体验常成员函数
- 并查集 好朋友
- 【C++】static变量的生命周期,真的都是整个生命期吗
- 一个静态页面效仿1(div+css)
- int, long int, long long int, _int64範圍
- linux内核分析(5)
- [lua] string trim实现
- pt-query-digest查询日志分析工具
- 图的割点、桥与双连通分支