ImageVerifierCode 换一换
格式:DOCX , 页数:31 ,大小:86.66KB ,
资源ID:5006159      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-5006159.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验12 运算符重载Word格式文档下载.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

实验12 运算符重载Word格式文档下载.docx

1、 / 判断年份y是否为润年static int GetDays(int y); / 年份y的天数static int GetDays(const Date &d); / 日期d当前月份的天数static int DateToNum(const Date & / 返回从公元1年1月1日起的天数static Date NumToDate(int n); /由从公元1年1月1日起的天数返回日期润年条件:年份能被4整除,并且年份不能被100整除,或者年份能被400整除润年天数:366平年天数:365润年2月份天数:29平年2月份天数:285设计一个时间类Time,要求:(1)包含时(hour)、分(m

2、inute)和秒(second)私有数据成员。(2)包含构造函数,重载关于一时间加上另一时间的加法运算符+、重载关于一时间减去另一时间的减加运算符-、重载输出运算符可仿照第4题编程实现,可将时间转换成秒数,将秒数转成时间进行辅助编程。时间转换成秒数:秒数 = 时 * 3600 + 分 * 60 + 秒秒数转换成时间:时 = 秒数 / 3600分 = (秒数 - 时 * 3600) / 60秒 = 秒数 % 60为编程更方便,可增加一些成员函数,比如:void SetHour(int hh); / 设置小时 void SetMinute(int mm); / 设置分钟 void SetSecon

3、d(int ss); / 设置秒 int GetHour() const; / 返回小时 int GetMinute() const; / 返回分钟 int GetSecond() const; / 返回秒3、实验程序及结果1、#includeusing namespace std;class chessBoardprivate: int a22;public: chessBoard(int y,int b,int c,int d) a00=y; a01=b; a10=c; a11=d; int & operator()(int b,int c);int & chessBoard:operat

4、or()(int b,int c) return abc;int main() chessBoard v(1,2,3,4); v(0,1)=v(1,0); coutv(0,1)class xiabiao xiabiao()/构造函数赋予数组初值 for(int i = 0;i 5) jihei =(-1)* 2 * i; else jihei =i + 3; cout= 0;i-) coutjiheit; operator(int a) int t;i+)/冒泡排序 大的放前面 for(int j = 0;j 9-i;j+) if(jihejjihej+1) t = jihej; jihej

5、= jihej+1; jihej+1 = t; return jihea-1; int jihe10; xiabiao xi;最大的为:xi1第二的为:xi2第三的为:xi33、#include class Polynomial Polynomial(); Polynomial operator+(const Polynomial&)const; Polynomial operator-(const Polynomial& Polynomial operator*(const Polynomial&); Polynomial& operator+=(const Polynomial& oper

6、ator-=(const Polynomial& operator*=(const Polynomial& void EnterTerms();/输入函数 void PrintPolynomial( )const;/打印函数 int exponents100; int coefficients100; void polynomialCombine(Polynomial&/合并同类项Polynomial:Polynomial() for(int i=0;i100;i+)/置零 coefficientsi=0; exponentsi=0;void Polynomial:PrintPolynomia

7、l() const/输出函数 int start;/输出累加系数 bool zero=false; if(coefficients0)/常数存在 coutcoefficients0; start=1; zero=true; else if(coefficients1) coefficients1x /常量不存在,输出指数为1的项 if(exponents1!=0)&(exponents1!=1)exponents1; zero=true; start=2; for(int x=start;xx+) /输出其他各项 if(coefficientsx!=0)setiosflags(ios:show

8、pos)coefficientsx resetiosflags(ios: if(exponentsx!(exponentsx!exponentsx; if(!zero) /多项式为空0Polynomial Polynomial:operator+(const Polynomial& r) const Polynomial temp; bool exponentExists; temp.coefficients0=coefficients0+r.coefficients0; /计算常量之和 for(int s=1;(s100)&(r.exponentss!=0);s+) temp.coeffic

9、ientss=r.coefficientss; temp.exponentss=r.exponentss; for(int x=1;x+) /计算其他各项之和 exponentExists=false; for(int t=1;(t(!exponentExists);t+) if(exponentsx=temp.exponentst) temp.coefficientst+=coefficientsx; exponentExists=true; if(!exponentExists) temp.exponentss=exponentsx; temp.coefficientss+=coeffic

10、ientsx; s+; return temp;Polynomial &operator+=(const Polynomial &r) *this=*this+r; return *this;operator-(const Polynomial &r)const temp.coefficients0=coefficients0-r.coefficients0;(exponentss! temp.coefficientss=coefficientss; temp.exponentss=exponentss;x+) if(r.exponentsx=temp.exponentst) temp.coe

11、fficientst-=r.coefficientsx; if(! temp.exponentss=r.exponentsx; temp.coefficientss-=r.coefficientsx; s+;operator-=(const Polynomial& r) *this=*this-r;operator*(const Polynomial& int s=1; for(int x=0;(x(x=0|coefficientsx! for(int y=0;(y(y=0|r.coefficientsy!y+) if(coefficientsx*r.coefficientsy) if(exp

12、onentsx=0)&(r.exponentsy=0) temp.coefficients0+=coefficientsx*r.coefficientsy; else temp.coefficientss= coefficientsx*r.coefficientsy; temp.exponentss=exponentsx+r.exponentsy; s+; polynomialCombine(temp); /合并同类项polynomialCombine(Polynomial& w) Polynomial temp=w; int exp; w.coefficientsx=0; w.exponen

13、tsx=0; for(x=1; exp=temp.exponentsx; for(int y=x+1;ynumberOfTerms; for(int n=1;nc;Enter exponent:/阶数e; if(c! if(e=0)/初始置零 coefficients0+=c;/常数 continue; for(int term=1;(term(coefficientsterm!term+)/找是否阶数相同 if(e=exponentsterm) coefficientsterm+=c; exponentsterm=e; found=true;found)/阶数不同 另外储存 coeffici

14、entsterm+=c; exponentsterm=e;void main() Polynomial a,b,c,t,d; a.EnterTerms(); b.EnterTerms();endlFirst polynomial is: a.PrintPolynomial();Second polynomial is: b.PrintPolynomial();Adding the polynomials yields: c=a+b; c.PrintPolynomial();+=the polynomials yields: t=a; a+=b;Subtracting the polynomia

15、ls yields: a=t; c=a-b;-=the polynomials yields: a-=b;Multiplying the polynomials yields: c=a*b;*=the polynomials yields: a*=b;4、#includeiostream.hclass Date Date(int a=0,int b=0,int c=0); void Set_Date(int a,int b,int c); void Get_Date(); Date operator+(int); Date operator-(int); friend ostream& ope

16、rator(istream& int year,mounth,date,m;Date:Date(int a,int b,int c) year=a; mounth=b; date=c; m=1;void Date:Set_Date(int a,int b,int c)Get_Date() if(m=1)year年mounth月date28) m=0; return *this; if(year%400=0)|(year%4=0)&(year%100!=0) if(mounth=4)|(mounth=6)|(mounth=9)|(mounth=11) if(date+a)=30) date=date+a; date=date+a-30; mounth+; if(mounth=2) if(date+a)=29) date=date+a; else mounth+; =31) date=date+a-31; if(mounth=12) year+; mounth=1; else mounth+; else=28) date=date+a-28;

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2