搜题
网友您好,请在下方输入框内输入要搜索的题目:
搜题
题目内容 (请给出正确答案)
提问人:网友leafhjz 发布时间:2022-01-07
[主观题]

构建一个多边形类,可以设置每一个顶点的坐标,可以计算周长,或其它更多的功能 要求 1. 程序必须具

有良好的封装和结构,这个多边形类,是以给别人使用为目标的,而非自己都用,所以请思考合理的接口 2. 充分利用注解来说明程序的架构,设计的思想(算分的,所以请勿忽略) 为了达到题目要求,可以参考以下的做法。注意,以下做法,如果你觉得合适,即可参考,你如果觉得不合适,则不参考,自行构建 1. 创建Polygon类表示多边形,多边形的顶点个数在构造中指定; 2. 创建Polygon的构造函数中用new创建Point的数组,当然,Point是另一个需要你自己构造的类,在析构函数中delete这个数组 3. 以保护和实用两方面出发,充分思考哪些成员公有,哪些私有

简答题官方参考答案 (由简答题聘请的专业题库老师提供的解答)
  抱歉!暂无答案,正在努力更新中……
更多“构建一个多边形类,可以设置每一个顶点的坐标,可以计算周长,或其它更多的功能 要求 1. 程序必须具”相关的问题
第1题
已知一个有向图的邻接表,试编写一个算法,计算各顶点的入度。

点击查看答案
第2题
将有顶点容量限制的顶点u用一条边(u,v)代替,顶点u的入边仍为u的入边,顶点u的出边变为顶点v的出边。 (u,v)的容量等于原先顶点u的容量。变换后 网络的最大流等于原网络的最大流
点击查看答案
第3题
以下数据结构编写一个订单管理小程序,场景请自行设定,并在注解中说明你的构想,在main函数中完成一个简单的功能测试。 注意: 以上类结构仅为示例,但没有描述所有的必须配置,其它必要成员请同学们自行添加; 订单至少必须完成添加、删除、打印、以及订单列表的复制四项功能,并在主函数中测试,其它功能同学们自行添加。 必须使用以下技术:构造、析构、new、delete、引用、复制构造
点击查看答案
第4题
封装 C风格字符串,类名String:在main函数中实现: (1) String s1 = "is"; (2) String s2 = s1 + " a "; (3) String s3 = "This " + s2; (4) String s4('A', 4); //相当于 s5 = "AAAA"; (5) String s5 = s3 + s4 + " Hotel"; (6) cout << s5 << endl; (7) for(int i = 0; i < s5.GetLenth(); ++i) if (s5[i] >= 'a' && s5[i] <= 'z') s5[i]="s5[i]" - ('a' 'a'); (8) cout s5 endl;>
点击查看答案
第5题
对Complex类进行运算符重载,支持复数之间,复数与double之间的计算,包括: (1) +,-, *, / (2) ==, != (3)+=,-=,*=,/= (4)double赋值给复数 (5)重载“~”运算符,获得共轭复数(实部相等,虚部符号相反) (6)+(正号)、-(负号) (7)重载“!”运算符,获得复数的模
点击查看答案
第6题

编写一个排序器模板类,这个类可以叫做 Sorter,采用弱聚合的方式关联一个已有的数组,并可以采用多种方式对数组进行排序或其它操作,数组中元素的类型作为模板参数T,这个类具有以下成员: (1)构造函数,传入数组,以及数组的长度 (2)构建一个排序函数,采用任意一种比较排序方法排序,这个排序方法可以要求T类型必须实现 > 或 < 运算符的重载 (3)将之前作业中的 Complex 类模板化,将实部和虚部参数化,并利用Sorter对一组复数排序 (4)实现对Complex和Sorter类<<运算符的重载 (5)在注解中描述实现不同排序规则的机制(详细度10分,准确性10分) 特别注意:本题禁用全局变量,禁用静态变量 主函数如下,补充其它必要的代码完成程序 ...... int main() { n="10;"> * arr = new Complex<float>[n]; //随机初始化Complex的数组,每个实部/虚部最小-10,最大10; RandomInitComplexArray<float>(arr, n, -10, 10); //构建排序类 Sorter<complex<float>> sorter(arr, n); //打印数组 cout << sorter << endl; //未排序数组的输出 SetComplexSortModel<float>(arr, n, 0);//设置排序方式为按照实部排序 sorter.Sort(); //排序 cout << sorter << endl; //打印排序后数组 SetComplexSortModel<float>(arr, n, 1);//设置排序方式为按照虚部排序 sorter.Sort(); //排序 cout << sorter << endl; //打印排序后数组 SetComplexSortModel<float>(arr, n, 2);//设置排序方式为按模排序 sorter.Sort(); //排序 cout << sorter << endl; //打印排序后数组 delete[] arr; return 0; }

点击查看答案
第7题
(1)构筑字典模板类Dictionary<tkey, tvalue>,TKey表示索引类型,TValue表示值类型; (2)模拟智能硬件的开关阵列,TKey采用字符串(尽可能采用14单元作业中自己写的字符串的封装(10分)),TValue采用bool型,表示开(true),或者关(false); (3)Controller类(非模板类)内部聚合了一个Dictionary,其中设定了窗帘、灯光等7中家用电器(自行设定),这些家用电器的名称作为Dictionary的Key,Controller类利用四个函数(函数名自拟)设定四种家庭场景:起床、出门、回家、晚安; (4)在这四种场景中,利用Dictionary对[]运算符的重载,设定7中不同家用电器的开关设置(如何设置,自行设定,符合常理即可),并注解中详细说明如何设置,以及理由; (5)在主函数中调用四种场景,并利用 Controller 类对<< 运算符的重载,输出不同电气的状态(包括输出场景名称、以及此时每一样电气的名称,电气的开关状态(显示“ON”表示开启,显示“OFF”表示关闭))
点击查看答案
第8题

构建一个模拟的银行排队系统,每个客户随机进入银行,银行柜台处理速度也是随机的。模拟并监控这个过程,设法使得排队(每条队伍)人数总体上不超过3人,客户进入银行的平均频率(客户/分钟),以及柜台处理业务的速度(客户/分钟)可以设定。 请答题者在以下三个系列中选择一项答题,每个系列总分不同 A系列(总分90),一条队伍,一个柜台; B系列(总分95),多条队伍,多个柜台,每条队伍对应一个柜台,每条队伍相互独立,客户进入银行,总是选择人数最少的队伍排; C系列(总分100),排队叫号,客户进入银行入座休息区即可,多个柜台,每个柜台之间的业务不区分; 要求: 构建模板类Node(节点)和模板类 Queue(队列),队列由节点采用链表的方式组成;队列 Queue 类内部采用head指针指向队列首节点,tail指针指向队列尾节点;队列每个节点 Node 都拥有指向下一个节点的指针 next;节点与队列类本身不应该包含任何有关于客户、银行等应用相关的信息; 队列 Queue 必须包含以下功能: void Push(const T& data) 成员函数,公有,从尾部添加节点,可以增加 Queue<t>& operator += (const T & data) 运算符的重载(类内部重载)同样实现此功能,客户进入银行排队即调用此功能; T Pop() 成员函数,公有,从队列头部删除节点,函数返回刚刚删除节点中的数据,可以增加 T operator ~() 运算符的重载(类内部重载)同样实现此功能,银行开始处理某个客户的业务,即可以调用此功能将客户从队列中删除; int GetCount() const 成员函数,公有,获得队列长度; T& operator[] (int i) 类内部运算符重载,公有,获得队列中第 i 个数据; const T& operator[] (int i) const 类内部运算符重载,公有,获得队列中第 i 个数据,只读版本; 构建一个结构体存储客户排队的相关信息,包括客户姓名、编号、进入队列的时间(可以简单的采用一个小数,表示从程序启动开始进入银行的分钟数),这个结构体作为 Node 和 Queue 模板类型参数的实例; 构建Bank类模拟整个银行大厅的排队情况,不要在主函数中编写大量的代码模拟排队。 进行可视化的输出,可以只用文本输出,清晰展现银行大厅的现状,并随着时间的推移而变化,可以加速; 自行搜索并参考 sleep 函数,该函数用于延时,在这一类模拟程序中比较常用; 程序必须结构清晰,注解内容包括:程序首行必须说明选择A、B、C哪一个系列,说明每一个类的用途,以及说明如何达到 3 人排队要求的。

点击查看答案
第9题
构建一个模拟的绘图系统 必须有基类Shape,建立纯虚函数Draw,用于模拟的绘图 建立Shape的派生类,例如直线、矩形、椭圆等等 每一个派生类都必须实现Draw函数。绘图函数可以进行Windows绘图,可以只是在命令行模式输出一些象征性的符号,答题者可以在网上搜索GotoXY函数的编写,进行命令行定位输出。 构建画布类Canvas,其中利用链表或者数组,存储所有的Shape,可以添加、删除Shape,每一个Shape都利用Shape类型的指针指向图形对象的实例。 主函数中随机向Canvas画布对象随机加入不同的图形,调用Canvas的Draw函数,遍历所有Shape指针指向具体实例的Draw函数,实现模拟的绘图。
点击查看答案
第10题
题目5 (1) 输入a、b、c,采用两种方法对方程 [图] 进行求...

题目5 (1) 输入a、b、c,采用两种方法对方程进行求解。这里要对尽可能多情况做出判别。对这两种方法进行比较,并从多个角度进行对比描述。 (2) 输入a, b, c, x1, x2,采用两种方法对在 x1 ~ x2 区间求定积分。这里要对各种情况做出尽可能多的判别。对这两种方法进行比较,并从多个角度进行对比描述。 (1)与(2)任选一题,上传编程和运行结果的截图,并同时用文字说明对两种方法的比较。

点击查看答案
重要提示: 请勿将账号共享给其他人使用,违者账号将被封禁!
查看《购买须知》>>>
重置密码
账号:
旧密码:
新密码:
确认密码:
确认修改
购买搜题卡查看答案
购买前请仔细阅读《购买须知》
请选择支付方式
微信支付
支付宝支付
点击支付即表示你同意并接受《服务协议》《购买须知》
立即支付
搜题卡使用说明

1. 搜题次数扣减规则:

功能 扣减规则
基础费
(查看答案)
加收费
(AI功能)
文字搜题、查看答案 1/每题 0/每次
语音搜题、查看答案 1/每题 2/每次
单题拍照识别、查看答案 1/每题 2/每次
整页拍照识别、查看答案 1/每题 5/每次

备注:网站、APP、小程序均支持文字搜题、查看答案;语音搜题、单题拍照识别、整页拍照识别仅APP、小程序支持。

2. 使用语音搜索、拍照搜索等AI功能需安装APP(或打开微信小程序)。

3. 搜题卡过期将作废,不支持退款,请在有效期内使用完毕。

请使用微信扫码支付(元)

订单号:

遇到问题请联系在线客服

请不要关闭本页面,支付完成后请点击【支付完成】按钮
遇到问题请联系在线客服
恭喜您,购买搜题卡成功 系统为您生成的账号密码如下:
重要提示:请勿将账号共享给其他人使用,违者账号将被封禁。
发送账号到微信 保存账号查看答案
怕账号密码记不住?建议关注微信公众号绑定微信,开通微信扫码登录功能
警告:系统检测到您的账号存在安全风险

为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!

- 微信扫码关注简答题 -
警告:系统检测到您的账号存在安全风险
抱歉,您的账号因涉嫌违反简答题购买须知被冻结。您可在“简答题”微信公众号中的“官网服务”-“账号解封申请”申请解封,或联系客服
- 微信扫码关注简答题 -
请用微信扫码测试
欢迎分享答案

为鼓励登录用户提交答案,简答题每个月将会抽取一批参与作答的用户给予奖励,具体奖励活动请关注官方微信公众号:简答题

简答题官方微信公众号

简答题
下载APP
关注公众号
TOP