2015年大一下第11周项目4-点、圆的关系(2)重载关系运算符
来源:互联网 发布:淘宝怎么举报卖家违规 编辑:程序博客网 时间:2024/05/16 09:22
/**Copyright (c) 2014,烟台大学计算机学院*All rights reserved.*文件名称:Annpion.cpp*作者:王耀鹏*完成日期:2015年5月20日*版本号:v1.0**问题描述:以Point为基类,派生出一个Circle(圆)类。*输入描述:无。*输出描述:比较两个圆的面积大小。*/#include <iostream>#include<cmath>using namespace std;class Circle;class Point{protected: double x,y;public: Point(double a,double b):x(a),y(b){} friend ostream &operator<<(ostream & out,const Point &p);};ostream &operator<<(ostream & out,const Point &p){ cout<<"("<<p.x<<","<<p.y<<")"; return out;}class Circle:public Point{private: double r;public: Circle(double a,double b,double c):Point(a,b),r(c){} double area(); bool operator >(Circle &c); bool operator <(Circle &c); bool operator ==(Circle &c); bool operator >=(Circle &c); bool operator <=(Circle &c); bool operator !=(Circle &c); friend ostream &operator<<(ostream & out,const Circle &c);};double Circle::area(){ return (3.1415*r*r);}bool Circle::operator>(Circle &c){ if(r-c.r>0) return true; else return false;}bool Circle::operator<(Circle &c){ if(r-c.r<0) return true; else return false;}bool Circle::operator==(Circle &c){ return !((*this>c)||(*this <c));}bool Circle::operator>=(Circle &c){ return !(*this <c);}bool Circle::operator<=(Circle &c){ return !((*this>c));}bool Circle::operator!=(Circle &c){ return !(*this==c);}ostream &operator<<(ostream & out,const Circle &c){ cout<<"圆心为:"<<"("<<c.x<<","<<c.y<<")"<<"半径为:"<<c.r; return out;}int main( ){ Circle c1(3,2,4),c2(4,5,5); //c2应该大于c1 cout<<"圆c1( "<<c1<<" )的面积是 "<<c1.area()<<endl; cout<<"圆c2( "<<c2<<" )的面积是 "<<c2.area()<<endl; cout<<"圆c1 "; if(c1>c2) cout<<"大于, "; if(c1<c2) cout<<"小于, "; if(c1>=c2) cout<<"大于等于, "; if(c1<=c2) cout<<"小于等于, "; if(c1==c2) cout<<"等于, "; if(c1!=c2) cout<<"不等于, "; cout<<"圆c2"<<endl; return 0;}
运行结果;
0 0
- 2015年大一下第11周项目4-点、圆的关系(2)重载关系运算符
- 2015年大一下第11周项目4-点、圆的关系(1)重载输入输出函数
- 2015年大一下第11周项目4-点、圆关系(3)直线与圆的交点
- 2015年大一下第7周项目2-Time类中的运算符重载(续)
- 2015年大一下第6周项目2-Time类中的运算符重载
- 2015年大一下第7周项目1-复数类中的运算符重载(续)
- 2015年大一下第7周项目3-分数类中的运算符重载(续)
- 2015年大一下第6周项目3-分数类中的运算符重载(2)分数与整数的加减乘除
- 2015年大一下第6周项目1-实现复数类中的运算符重载
- 2015年大一下第6周项目3-分数类中的运算符重载(1)分数类的加减乘除
- 第十二周项目四 点、圆的关系-(2)重载关系运算符比较两个圆的面积
- 2015年大一下第8周项目4-点类派生直线类
- 2015年大一下第2周项目4-考了语文数学的学生
- 2015年大一下第12周项目4-链表类(2)约瑟夫环
- 2015年大一下第1周项目4-时间类
- 2015年大一下第1周项目2-旱冰场造价
- 2015年大一下第14周项目2-二进制文件浏览器
- 2015年大一下第3周项目4-指向学生类的指针
- akari.c
- egret HTML5游戏引擎简介
- 动态文本输出
- (转载)大型网站系统架构演化之路
- 评《“互联网+”草根春天,传统企业怎么办?》: “大风起兮云飞扬”,互联网+为你狂!
- 2015年大一下第11周项目4-点、圆的关系(2)重载关系运算符
- exceptional c++读书笔记
- Ubunt搭建 PHP+mysql+apache
- Error Domain=ASIHTTPRequestErrorDomain Code=5 "Unable to create request (bad url?)" UserInfo=0x15f86
- effective c++读书笔记
- php导入及导出excel文件
- Algs4-1.4.34热还是冷-猜出秘密数(Hot or Cold guess a secret integer)
- mysql 授权
- nyoj114 某种序列(大数)