下载此文档

实验12报告.doc


文档分类:高等教育 | 页数:约30页 举报非法文档有奖
1/30
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/30 下载此文档
文档列表 文档介绍
实验12报告.doc高等程序设计实验报告实验名称实验12运算符重载(2)系别姓名学号班级实验时间实验地点实验成绩一、实验目的及要求进一步理解运算符重载,运用成员函数和友元函数等方法实现运算符的重载。二、 实验环境及相关情况(包含使用软件、实验设备、主要仪器及材料等)硬件设备:联网的个人计算机操作系统:Windowsxp编译系统:DevC++Z实验内容及步骤(包含简要的实验步骤流程)1、重载函数调用运算符(),将以下的二维数组的下标表示方法:chessBoard[row][column]改为常用的表示方法:chessBoardfrow,column)2、 重载下标运算符使之返I门I集合中最大的元素、次最大的元素以及第三大的元素。3、 开发多项式类Polynomial,多项式的每一项用数组表示,每项包含一个系数和一个指数。例如:2x4的指数为4,系数为2。请开发一个完整的Polynomial类,包括构造函数、析构函数以及”get”函数和“set”函数。该类还要提供下述重载的运算符(分别使用成员函数和友元函数):1) 重载加法运算符+,将两个多项式相加;2) 重载减法运算符・,将两个多项式相减;3) 重载赋值运算符=,将一个多项式赋给另外一个多项式;4) 重载乘法算符*,将两个多项式相乘;5) 重载加法赋值运算符+=、减法赋值运算符-=以及乘法赋值运算符4、 设计一个LI期类Date,,要求:(1) 包含年(year)月(month)和日(day)私有数据成员。(2) 包含构造函数,重载关于一口期加上天数的加法运算符+、重载关于一口期减去天数的减加运算符-、重载输出运算符vv与输入运算符>>等。提示:由于各C++编译器对于重载输入/出运算符为友元的兼容性都存在问题,最好重载输入/出运算符不声明为成员函数与友元函数,而声明一般函数,为编程更方便,可增加一些成员函数,比如:voidSetYear(inty); // 设置年intSetMonth(intm); // 设置月intSetDay(intd); // 设置日intGetYear()const; //intGetMonth()const; 〃intGetDay()const; //staticintlsLeapyear(inty); //staticintGetDays(inty); //staticintGetDays(constDate&d);//staticintDateToNum(constDate&d);返|U|年返回月返回日判断年份y是否为润年年份y的天数日期d当前月份的天数//返叵I从公元1年1月1II起的天数staticDateNumToDate(intn);〃山从公元1年1月1II起的天数返叵III期润年条件:年份能被4整除,并且年份不能被100整除,或者年份能被400整除润年天数:366平年天数:365润年2月份天数:29平年2月份天数:28设刊,一个时间类Time,要求:包含时(hour)^分(minute)和秒(second)私有数据成员。包含构造函数,重载关于一时间加上另一时间的加法运算符+、重载关于一时间减去另一时间的减加运算符・、重载输出运算符vv与输入运算符>>等。提示:可仿照第4题编程实现,可将时间转换成秒数,将秒数转成时间进行辅助编程。时间转换成秒数:秒数=时*3600+分*60+秒秒数转换成时间:时分秒o♦oo6时6/3-%数场数秒仔秒为编程更方便,可增加一些成员函数,比如:voidSetHour(inthh);//设置小时voidSetMinute(intmm);//设置分钟voidSetSecond(intss);//设置秒intGetHour()const;//返回小时intGetMinute()const;//返回分钟intGetSecond()const;//返叵1秒四、实验结果(包括程序或图表、结论陈述、数据记录及分析等,可附页)1、重载函数调用运算符(),将以下的二维数组的下标表示方法:chessBoard[row]fcolumnl改为常用的表示方法:chessBoard(row,column)代码实现:#include<iostream>#inckide<>using;namespacestd;classshuzu(intchessBoard[8][8];public:shuzu()(for(inti=0;iv8;i++)for(intj=O;jv8;j++)chessBoard[i][j]=i+j;)intoperator()(inta,intb){returnchessBoard[a][bJ;}};intmain()(shuzua;cout«H输出(6,7)=H«a(6,7)«endl;cout«M矩阵:H«endl;for(i

实验12报告 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数30
  • 收藏数0 收藏
  • 顶次数0
  • 上传人ttteee8
  • 文件大小231 KB
  • 时间2020-07-03
最近更新