数据结构 计算器求大数.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构 计算器求大数

《C++程序设计》课程设计说明书 计算器求大数 院 部: 计算机与信息科学学院 学生姓名: 专 业: 软件工程 班 级: 1401 完成时间: 2015年6月 目 录 1. 设计概要 3 1.1 设计背景 3 1.2 数据结构设计 3 2. 需求分析 4 2.1 基本需求 4 2.2 实现功能 4 3. 算法设计 5 3.1 概要说明 5 3.2 模块间调用关系 5 3.3 详细说明(Abstract Data Type描述) 5 3.4 流程图及主要函数模块说明 6 3.4.1. 判断运算符优先权 6 (1) 算符优先关系表 6 (2) 算法代码 6 3.4.2. 主操作函数 7 (1) 算法概要流程图 7 (2) 操作过程 8 (3) 算法代码 8 3.4.3 二元运算函数 9 (1) 算法代码 10 4. 测试结果 11 4.1 简单表达式求值 11 4.2 复杂表达式求值 11 5. 总结 12 5.1 改进思想 12 5.2 经验和体会 12 参考文献 14 附 录 15 源程序 15 1. 设计概要 1.1设计背景 利用数组存储,根据需要改变大小。转化乘除法的思想,将乘法转化为加法,将除法转化为减法,减少程序计算的难度。 1.2数据结构设计 1.乘法用逐位相乘由各位到高位一次进行,然后初步确定计算结果的长度 s1[i] = c1[len1 - i -1] - 0 将字符串转化为整型,并反着存放。 2.除法转化为减法的思想来计算,大大降低计算设计的难度,利用数来存储。并可以根据计算位数要求设计数组大小以满足需求。 3.通过主函数来实现函数的调用。 2.1 需求分析 在调查与科研实验中经常需要计算位数相对较大的加减乘除法,但是计算机本身提供的数据类型无法保存几百位甚至上千位的。所以针对超过手机与计算器计算位数的四则运算,设计出能实现长整数运算的程序。 2.1 实现功能 大数加法:输入两个位数较大的数,实现加法计算。输入两个位数较大的数,实现乘法计算。输入两个位数较大的数,实现除法计算,计算结果只保留整数。 图4-1主菜单 图4-2 大数加法 图4-3 大数除法 图4-4 进制转换 实验总结 5.1改进思想 1.减法不能用小数减去大数,即不能有负数结果。 2.除法不能保留小数点后的数字,精确度还有待提高。 3.程序的界面也还有待改进,可以进一步将界面进行美化 5.2 经验和体会 大数的四则运算虽然不难,但是要打破常规,将乘法与除法换一种思想来计算,构思方面有很大的挑战。 在这次试验中我们认识到了对于特别长的数的计算,只能化整为零,先求局部的结果,然后将各部分的结果综合起来,得到最终的结果。比如加法就是从最低位开始计算,判断进位后再向高位计算。但是乘除法虽然进行了转换,但是数字如果太大的话,进行加减法的次数也是很庞大的。 本程序是分工完成的,所以我们也充分认识到了团队协作的重要性,通过一起的讨论与分工,我们能得出解决问题的最好办法,各抒己见,在争论中互相成长。 此外,这次的课程设计进一步加强了我们进行编程,调试,处理问题的能力,加深了我们对算法及数据结构的认识,对于程序的一些基本结构也更加地熟悉,课本知识也能够更加熟练地运用。。同时我们也意识到,开发程序的早期计划要做的充分,以免出现程序完成后发现不足而带来的修改麻烦。虽然这只是一个小小的程序,但对我们之后的影响确实很大的。 参考文献 [⒈]谭浩强. C++程序设计(第四版). 清华大学出版社,2010年6月 [⒉]谭浩强. C语言程序设计(第四版). 清华大学出版社,2010年6月 [⒊]崔进平 等. 数据结构(C语言版). 北京:中国铁道出版社,2008年11月 [⒋]Stephen Prata. C Primer Plus中文版(第五版).人民邮电出版社,2005年2月 附 录 源程序 #includeiostream using namespace std; #includemalloc.h #includestdio.h #includestring.h #includewindows.h #includemalloc.h #define NUM 1000 typedef struct STACKNOTE { char data; STACKNOTE* ne

文档评论(0)

rovend + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档