关闭

第六周实验报告3

157人阅读 评论(0) 收藏 举报
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生 
* All rights reserved.
* 文件名称: class time
* 作 者: 于昊
* 完成日期: 2012 年 03 月 25 日
* 版 本 号: 1.0
* 对任务及求解方法的描述部分
* 输入描述:
* 问题描述:
* 程序输出:
* 问题分析:

* 算法设计:……

#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=0);  
  
    double Distance (Cpoint &p) const;  
  
    double Distance0() const;  
  
    Cpoint symmertricAxis(SymmetricStyle style) const;  
  
    void intput();  
  
    void output();  
  
    double returnx(){return x;} ;  
  
    double returny(){return y;} ;  
  
};  
  
Cpoint::Cpoint (double xx,double yy)  
{  
    x=xx;  
    y=yy;  
}  
double Cpoint::Distance (Cpoint &p) const  
{  
    cout<< "到p点距离"<<sqrt((x-p.returnx())*(x-p.returnx())+((y-p.returny())*(y-p.returny())))<<endl;  
    return 0;  
}  
  
double Cpoint::Distance0() const  
{  
    cout<< "到原点距离"<<sqrt(x*x+y*y)<<endl;  
    return 0;  
}  
Cpoint Cpoint::symmertricAxis(SymmetricStyle style) const  
{  
    double a,b;  
    switch(style)  
    {  
    case axisx:{  
        a=-x;  
        b=y;  
        cout<<"按x轴对称"<<"("<<a<<","<<b<<")"<<endl;  
           };  
    case axisy:{  
        a=x;  
        b=-y;  
        cout<<"按y轴对称"<<"("<<a<<","<<b<<")"<<endl;  
           };  
    case point:{  
        a=-x;  
        b=-y;  
        cout<<"按原点对称"<<"("<<a<<","<<b<<")"<<endl;  
           }break;  
    default:cout<<"输入错误";break;  
    }  
    return 0;  
}  
  
void Cpoint::intput()  
{  
    char ch1,ch2,ch3;  
    do  
    {  
        cout<<"请以(x,y)的方式输入x,y:";  
        cin>>ch1>>x>>ch2>>y>>ch3;  
        if(ch1 == '(' && ch2 == ',' && ch3 == ')')  
            break;  
    }  
    while (1);  
}  
void Cpoint::output()  
{  
    cout<<"该点为"<<"("<<x<<","<<y<<")"<<endl;  
}  
int main()  
{  
     SymmetricStyle style;  
    Cpoint p(5,6);  
    Cpoint a;  
    a.intput();  
    a.Distance ( p);  
    a.Distance0();  
  
    cout<<"style的类型(axisx按x轴对称,axisy按y轴对称,point按原点轴对称)"<<endl;  
  
    style=axisx;  
  
    a.symmertricAxis( style);  
    a.output();  
    return 0;  
}  

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:27792次
    • 积分:800
    • 等级:
    • 排名:千里之外
    • 原创:55篇
    • 转载:2篇
    • 译文:0篇
    • 评论:6条
    文章分类
    最新评论