循环语句练习程序流程图.docxVIP

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

计算1-2+3-4+5……+99-100的值。2、求1~1000之间可以同时被3、5、7整除的数字。分析过程:明确判断的区间为[1,1000];对[1,1000]范围内的每一个数字都要进行相同的判断过程;判断过程:一个数字是否能够同时被3、5、7整除,如果可以,将该数字输出,否则不操作。算法步骤:利用循环结构来循环读取[1,1000]区间的每一个数字 for( i )//循环读入[1,1000]内的数字{ //每读入一个数字,都要进行是否能够同时被3、5、7整除的判断过程if( ){ //输出数字}}求解水仙花数。水仙花数是一个三位数,并且该三位数每个位数上的数字的立方和等于该三位数本身。分析过程:由概念确定判断数字的取值范围为[100,999];分解每个三位数,得出个、十、百位数字;判断每个三位数的个十百数字立方和是否等于该数字本身;如果等式为真,输出该三位数,否则不操作。算法步骤:由分析过程可知每个三位数都要进行相同的分解过程和判断过程,可以使用循环结构来实现: for( i )//循环读入[100,999]内数字{ //1、分解读入的三位数i ge=…….shi=……..bai=………//2、判断ge3+shi3+bai3==i等式的真假 if(ge3+shi3+bai3==i) { //输出该三位数i}}假定在银行中存款5000元,按照6.25%的年利率计算,试过经过多少年后会连本带利翻一番,编程实现。分析过程:假设今年存款5000元,按6.25%年利率增加,明年是5000*(1+0.0625)元,后年就是5000*(1+0.0625)2,大后年就是5000*(1+0.0625)3,依次类推;在存款初值为5000元的基础上,每一年增加以后,都要判断一下是否连本带利翻一番(即当年的存款额是否大于等于存款初值的2倍),如果判断结果为真,则不再按年利率增加;题目要求统计出经过多少年会使得2中的判断结果为真;算法步骤:存款初值为5000(m),当年存款额(s)为存款初值;当年存款额按照年利率增加,每增加一年,将年数累加一次,然后判断是否大于等于存款初值的2倍,如果没有超过,则继续按年利率增加,否则不再增加。do{ //1、增加一次存款额 …………. //2、累加一次年数 ……………}while(存款额是否大于等于存款初值的2倍); 5、打印输出前100个自然数中的所有素数。分析过程:明确素数的概念:在一个大于1的自然数中,除了1和此数本身外,没法被其他自然数整除。2是最小的素数,其余偶数均不是素数,1和0既不是素数也不是合数!由概念可以推导出几个结论:2是最小素数,可以直接输出;大于2的偶数绝不是素数;对于大于2的奇数,可以进行是否素数的判定,该判定过程可以从该数是否只能被1和它本身整除而不能被其他自然数整除的条件上去进行判定。算法步骤:直接输出最小素数2排除掉3-100区间范围内的所有偶数针对3-100区间内的奇数去进行判断,因为每一个奇数都要重复相同的判断过程,所以可以利用一个循环体去进行循环读取奇数,读入奇数以后的判断过程:每次读入一个奇数(假设用i变量表示)以后,只要能够证明该奇数不能被区间[2,i-1]内的所有数字整除(取模运算结果等于0),就可以说明该奇数是一个素数。该过程又可以用一个循环结构去描述,所以用第二个循环体去进行整除的判定。 for( i )//循环读入[3-100]内的奇数{ //判断奇数i是否能被[2,i-1]内的数字整除 for( j )//循环进行i%j==0等式的判断 {//只要某一次循环时候i%j==0等式为真,即可结束内层循环,i不是素数;只有当区间内所有数字进行等式判断都为假时,i是素数! …………….}}计算1!+2!+…+10!的值。(也可以利用单层循环来实现)分析过程(以两层循环来实现):单个数字的阶乘如何计算?(利用循环结构进行累乘的操作)1!:1*12!:2*13!:3*2*1单个数字的阶乘计算出结果以后,再将结果进行累加?(利用循环结构进行累加的操作);先计算阶乘后进行累加,所以两个循环结构存在嵌套关系,哪个是内层循环,哪个是外层循环?算法步骤:for( m )//计算单个数字阶乘{ //累乘操作}由题目可知累加[1-10]区间的数字的阶乘,可以理解为该区间数字都要重复1中的计算过程,可以在1的基础上循环读入[1-10]区间内的每一个数字。既然是循环读入,所以可以再利用循环结构来实现。 for( n )//循环读入[1-10]区间内数字{ }根据逻辑过程(先读入数字后计算该数字阶乘),可将1和2组合成循环嵌套结构: for( n )//循环读入[1-10]区间内数字,外层{ for

文档评论(0)

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

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

1亿VIP精品文档

相关文档