首页计算机书籍程序设计True BASIC程序设计题解_谭浩强等著_730200739X
memories

文档

1380

关注

0

好评

0
PDF

True BASIC程序设计题解_谭浩强等著_730200739X

阅读 651 下载 0 大小 5.17M 总页数 195 页 2023-03-17 分享
价格:¥ 10.00
下载文档
/ 195
全屏查看
True BASIC程序设计题解_谭浩强等著_730200739X
还有 195 页未读 ,您可以 继续阅读 或 下载文档
1、本文档共计 195 页,下载后文档不带www.pdfdz.com水印,支持完整阅读内容。
2、古籍基本都为PDF扫描版,所以文档不支持编辑功能,即不支持文档内文字的复制粘贴。
3、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
4、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
5、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。
§1.3用“逐步细化”方法设计程序1.3.1计算S=1°+2+22+28+2+…+2"。【解】首先将问题描述为下面的三个子问题:S3:打印输出结果。分别对三个子问题细化:S1:用S表示总和,i表示第i项,N表示总项数,把初值分别赋给变量:·0→S,0→i,15→N:S2:为便于计算,把题中的计算式改写为或根据上述递推公式可以得到如下算法:当i≤N时,重复执行其中x为一中间变盘,用来传送2的值。0→S,0→i,15→NS3:打印输出S。当i≤N上述算法丽N-S图表示,如图1.2所示。1.3.2计笋【解】首先将问题抽象为三个子问题:打印SS2:计算出常数a与x的i次幂的乘积图1.2S3:求和并打印输出结果。分别对三个子问题进行细化:S1:置初值。S1.1:用S表示总和,i表示第i项,N表示总项数,A(10)用来存放常数:0→i,10→N:S2:计算。S2.1:为便于计算,把题中的计算式改写为或根据上述递推公式可以得到如下算法:当i≤N时,重复执行A()*x→x1S+x1→S其中x1为中间变量,用来传送A()米x的值。S3:打印输出S。上述算法用N-S图表示,如图1.3所示。1.3.3(1)有10个火柴盒排成一列,每个火柴盒中装入一张写着一个数的纸片,请将这10张纸片按所写数的大小顺序排列。排列过程必须按下列规则进行:S+x1-S()可以借用其它火柴盒:纸片只能在火柴盒之间移动,且每个火柴盒中最多只许放一张纸片。打印S你能设计几种排序方法?哪一种排序方法图1.3使用的辅助火柴盒最少?哪一种排序方法移动纸片数最少?(2)排好序后,把10个火柴盒全部关好,使人不能看到火柴盒内的数,然后给定一个数,要你把装这个数的盒找出来。你能设计儿种找法?哪一种方法打开火柴盒的次数最少?【解】这是一个对一组数字序列进行排序和查找的问题。日前已研究出许多带序算法。按其基本策略来分,可分为插入法、交换法、选轻法、分配法、归并法等。由于评价算法优劣的角度不同,所以解决具体问题时所使用的方法也不同。通常评价算法主要从两方面进行:一是算法执行所需要的时间,另一是算法执行所需要的附加空间大小。此外还要考虑算法本身的复杂程度等。结合本题的要求,下面分别介绍两种节省空间和时间的常用排序算法,以供参考。(1)使用辅助存储空间较少的冒泡排序算法(交换排序法之一):采用此算法只需一个用作交换数据的辅助火柴盒,便可将火柴盒内数据依照其大小顺序排列好。具体排序过程如下:先将第一个火柒盒中数据与第二个火柴盒中的数据比较,若后者大于前者,则交换数据,即将第一个盒中的数据放到辅助火柴盒中,然后将第二个盒中的数据放入第一个盒内,再将辅助的火柴盒中的数据放入第二个火柴盒内;若后者不大于前者,则不作交换工作,接着将第二个与第三个比较,依此类推,将10个火柴盒内数据按大小顺序排列好,采用此种年法需进行9轮,每轮分别执行9、8、7、6、5、4、3、2、1次才能完成。在计算机上实现此算法大致可分为以下三步:S2:对数据进行排序:S3:打印输出结果。5
返回顶部