结构化程序设计应用举例.ppt

  1. 1、本文档共97页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * 实验九 结构化程序设计综合实例 * *P85二、程序题1.一个素数,若将其数字位置任意对换后仍为素数,则称为绝对素数。求两位数的绝对素数的和及个数。程序中有两个错误,请改正。prog21.prg * SET TALK OFF CLEA T=0 S=0 FOR I=10 TO 99 P=.T. FOR J=2 TO SQRT(I) IF MOD(I,J)=0 P=.F. LOOP 正确语句为 EXIT ENDIF ENDFOR IF P A=INT(I/10) B=MOD(I,10) K=B*10+A 方法一 * W=.T. FOR J=2 TO SQRT(K) IF MOD(K,J)=0 W=.F. EXIT ENDIF ENDFOR IF W=.F. 正确语句为 IF W 或者 IF W=.T. ?I S=S+I T=T+1 ENDIF ENDIF ENDFOR ?“S=“,S ,T=,T set talk on return * SET TALK OFF CLEAR P=0 S=0 for m=11 to 99 if prime(m) n=10*mod(m,10)+int(m/10) if prime(n) ?m P=P+1 S=S+M endif endif endfor ?“S=+ALLT(STR(S)) FONT , 46 ?P=+ALLT(STR(P)) FONT , 46 CAncel 方法二 * func prime para n flag=.t. k=int(sqrt(n)) j=2 do while j=k and flag if mod(n,j)=0 flag=.f. endif j=j+1 enddo return flag * P85二、程序题3. 若一个自然数恰好是它的平方的末后几位数,则称此数为自同构数。如5和76都是自同构数,因为它们的平方分别是25和5776。求[2,99999]内所有自同构数之和。 set talk off CLEAR ?同构数有: for n=2 to 99999 L=LEN(ALLT(STR(N))) if n=mod(n^2,10^L) ?n endif endfor set talk on * SET TALK OFF CLEAR SUMX=1 FOR K=9 TO 1 STEP -1 SUMX=2*(SUMX+1) ENDFOR ?SUMX RETURN ◆ P85二、程序题5.猴子吃桃子问题。小猴子第一天摘下若干个桃子,立即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩余的吃了一半,又多吃了一个。以后每天早上都吃了剩余的一半又一个。到第十天早上想吃桃子时,只剩余一个了。问第一天共摘了多少个 * *思考题 *1:已知S=2+(2+4)+(2+4+8)+……求S6000的S的最小值 CLEAR DIME SUM2(10000) S=0 SUM1=0 FOR N=1 TO 10000 SUM1=SUM1+2^N S=S+SUM1 SUM2(N)=S ?SUM2(N) IF S6000 EXIT ENDIF ENDFOR ?S=,SUM2(N-1) RETURN * *2求S=1+1/1!+1/2!+1/3!+……+1/n! SET TALK OFF CLEAR S=1 T=1 FOR N=1 TO 25 T=T*N S=S+1/T ENDFOR ?S=,ROUND(S,4) SET TALK ON RETURN * *3求[100,900]之间相差为12 的素数对的个数 SET TALK OFF CLEAR dime a(400) k=0 p=0 FOR M=100 TO 900 IF PRI(M) k=k+1 a(k)=m * ?A(“+allt(str(K))+)=,A(K) ENDIF ENDFOR *?K * for i=2 to K if a(i)-a(i-1)=12 * ?a(i),a(i-1) p=p+1 endif endfor ?p=,p SET TALK ON RETURN * FUNC PRI PARA N J=2 FL=.T. X=INT(SQRT(N)) DO WHILE J=X AND FL IF MOD(N,J)=0 FL=.F. EXIT EN

您可能关注的文档

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档