第六周任务3

原创 2012年03月27日 18:56:04
实验目的:加强对类的认识。
实验内容:设计平面坐标点类,并进行相应运算。
* 程序头部注释开始
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生 
* All rights reserved.
* 文件名称:2012                             
* 作    者:王明星                           
* 完成日期:  20112年 03月 27 日
* 版 本 号: 2012         

* 对任务及求解方法的描述部分
* 输入描述:
* 问题描述:
* 算法说明:* 程序头部的注释结束(此处也删除了斜杠)
#include <iostream>
#include <cmath>
using namespace std;
enum symmetricstyle{axisx,axisy,point};//枚举
class Cpoint
{
private:
	double x;横//坐标
	double y;//纵坐标
public:
	Cpoint (double xx=0,double yy=00);
          double Distance (Cpoint p)const;//两点之间的距离
	double Distance0() const;//到原点的距离
	Cpoint symmetricaxis(symmetricstyle style) const;//返回对称点
	void input();//输入坐标
	void output();//输出坐标
};
Cpoint::Cpoint(double xx,double yy)
{
	x=xx;
	y=yy;
}
double Cpoint::Distance(Cpoint p)const
{
	return sqrt((x-p.x)*(x-p.x)+(y-p.y)*(y-p.y));
}
double Cpoint::Distance0()const
{
	return sqrt(x*x+y*y);
}
Cpoint Cpoint::symmetricaxis(symmetricstyle style)const
{
	Cpoint p(x,y);
	switch (style)
	{
	case axisx:p.y=-y;break;
	case axisy:p.x=-x;break;
	case point:p.x=-x;p.y=-y;
	}
	return p;
}
void Cpoint::input()
{
	char ch;
	while (1)
	{
		cin>>x>>ch>>y;
		if(ch!=',')
			cout<<"格式不正确,请重新输入! "<<endl;
		else
			break;
	}
}
void Cpoint::output()
{
	cout<<'('<<x<<','<<y<<')'<<endl;
}
void main()
{
	Cpoint p1,p2,p;
	cout<<"请输入第一个点!";
	p1.input();
	cout<<"请输入第二个点!";
	p2.input();
	double distance=p1.Distance(p2);
	cout<<"两点之间的距离为:"<<distance<<endl;
	p=p1.symmetricaxis(axisx);
	p.output();
	p=p2.symmetricaxis(axisy);
	p.output();
	p=p2.symmetricaxis(point);
	p.output();
	distance=p2.Distance0();
	cout<<"到原点的距离为:"<<distance<<endl;
}


上机感言;通过对类得学习,我发现了在面向过程和面向对象之间他们是有差别的,我觉得面向对象根据有实际的应用价值,操作起来更方便!

第六周任务(3)

#include #include using namespace std; enum SymmetricStyle { axisx,axisy,point};//分别表示按x轴, y轴, 原点对...

《第六周实验报告任务3》

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称:  ...

第六周实验报告(任务3)

*程序头部注释开始 * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称:  设计平面...

第六周任务3(设计平面坐标点类)

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: ...

第六周任务3:平面坐标点类

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: ...

第六周任务三设计平面坐标点类,计算两点之间距离、到原点距离、关于坐标轴和原点的对称点等

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved.* 文件名称: *...

第六周任务(4)

#include #include using namespace std; enum SymmetricStyle { axisx,axisy,point};//分别表示按x轴, y轴, 原点对...

第六周作业任务四

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. *...

C++程序设计实验报告(四十五)---第六周任务三

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2012, 烟台大学计算机学院学生 * All rights reserved. * 文件名称:计算...

第六周任务二按要求填缺少的代码

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生  * All rights reserved. * 文件名称:设计...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:第六周任务3
举报原因:
原因补充:

(最多只允许输入30个字)