- 1、本文档共42页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【pascal教程】第4章 循环结构的程序设计
第四节 多重循环结构 当一个循环的循环体中又包含循环结构程序时,我们就称之为循环嵌套。 内循环整个作为外循环的一条语句。 例4.17 求1!+2!+…+10!的值。 【分析】这个问题是求10自然数的阶乘之和,可以用for 循环来实现。程序结构如下: for n:=1 to 10 do begin ①N!的值?t ②累加N!的值?s end 显然,通过10次的循环可求出1!,2!…,10!,并同时累加起来, 可求得S的值。而求T=N!,又可以用一个for循环来实现:因此,整个程序为: program ex4_17; var t,s:longint; i,j,n:integer; begin S:=0; for n:=1 to 10 do begin t=1; for j:=1 to n do //求n! t:=t*j; S:=S+t; //累加n! end; writeln(‘s=’,s:0:0); end. 以上的程序是一个二重的for循环嵌套。这是比较好想的方法,但实际上对于求n!,我们可以根据求出的(n-1)!乘上n即可得到,而无需重新从1再累乘到n。 程序可改为: program ex4_17; var t,s:longint; i,j,n:integer; begin s:=0;t:=1; for n:=1 to 10 do begin t:=t*n; //t为上一个数的n-1的阶乘值,再乘以n即为n! s:=s+t; //累加n! end; writeln(‘s=’,s:0:0); end. 显然第二个程序的效率要比第一个高得多。第一程序要进行1+2+…+10=55次循环,而第二程序进行10次循环。如题目中求的是1!+2!+…+1000!,则两个程序的效率区别更明显。 例4.18 一个炊事员上街采购,用500元钱买了90只鸡, 其中母鸡一只15元,公鸡一只10元,小鸡一只5元,正好把钱买完。问母鸡、公鸡、小鸡各买多少只? 【分析】设母鸡I只,公鸡J只,则小鸡为90-I-J只,则15*I+ 10* J+(90-I-J)*5=500,显然一个方程求两个未知数是不能直接求解。必须组合出所有可能的i,j值,看是否满足条件。这里I的值可以是0到33,J的值可以0到50。 源程序如下: programr ex4_18; var i,j,k:integer; begin for i:=0 to 33 do //枚举母鸡的数量 for j:=0 to 50 do //枚举公鸡的数量 begin k:=90-i-j; if 15*i+10*j+5*k=500 then writeln(i:5,j:5,k:5); end; end. 例4.19 求100-999中的水仙花数。(若三位数ABC,ABC=A3+B3+C3,则称ABC为水仙花数。例如153,13+53+33=1+125+27=153,则153是水仙花数。) 【分析】 根据题意,采用三重循环来求解。由于循环次数一定,用for循环最为简单。 程序如下: Program ex4_19_1; var a,b,c : integer; begin for a : =1 to 9 do for b : =0 to 9 do for c : =0 to 9 do if a*a*a+b*b*b+c*c*c=a*100+b*10+c then write(a*100+b*10+c : 6); end. 运行结果: 153 370 371 407 同时也可以采用一个for循环来求解,表面上看好像优于三重循环,实际上却比上面的程序效率低,请同学们自己分析。 程序如下: Program ex4_19_2; var m,a,b,c : integer; begin for m : =100 to 999 do begin a : =m div 100; //m的百位 b : =(m mod 100)div 10; //m的十位
您可能关注的文档
- 《速度变化快慢的描述--加速度》教学设计.doc
- 《送杜少府之任蜀州》用.ppt
- 《辉煌的隋唐文化(二)》PPT.ppt
- 《迢迢牵牛星》公开课详细版.ppt
- 《迈向和平的世界》教学课件.ppt
- 《采薇》课堂实录及解读.doc
- 《采访》透视美国文化霸权.ppt
- 《走-秋游去》课件.ppt
- 《醉花阴李清照》[课堂实用].ppt
- 《金版新学案》2012高考英语-Module-1-Small-Talk课件-外研版选修6.ppt
- 七章货物的保险.pptx
- 三章国际间接投资.pptx
- 人性假设理论.pptx
- 外研高一英语必修三ModuleIntroduction汇总市公开课获奖课件省名师示范课获奖课件.pptx
- 月相成因优质获奖课件.pptx
- 小学二年级语文课件《狐假虎威》省名师优质课赛课获奖课件市赛课一等奖课件.pptx
- 养羊业概况专题知识讲座.pptx
- 微生物的实验室培养市公开课获奖课件省名师示范课获奖课件.pptx
- 人教版六年级下册式与方程整理与复习市公开课获奖课件省名师示范课获奖课件.pptx
- 必威体育精装版高中精品语文教学:第二单元-第7课-诗三首:涉江采芙蓉、-短歌行、归园田居市公开课获奖课件省名师.pptx
文档评论(0)