程序(真题选_附部分答案)

上传人:shaoy****1971 文档编号:108674058 上传时间:2019-10-25 格式:DOC 页数:13 大小:87.50KB
返回 下载 相关 举报
程序(真题选_附部分答案)_第1页
第1页 / 共13页
程序(真题选_附部分答案)_第2页
第2页 / 共13页
程序(真题选_附部分答案)_第3页
第3页 / 共13页
程序(真题选_附部分答案)_第4页
第4页 / 共13页
程序(真题选_附部分答案)_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《程序(真题选_附部分答案)》由会员分享,可在线阅读,更多相关《程序(真题选_附部分答案)(13页珍藏版)》请在金锄头文库上搜索。

1、程序改错阅读下面程序,修改其中的错误,然后运行程序,并将运行后得到的正确结果填入指定的方框中。1. 求100550内的所有素数的个数。(素数是指只能被1和本身整除的数)*set talk offclean=0for i=100 to 550f=1for j=2 to i (改为 for j=2 to i-1 )if mod(i,j)=0f=0loopendifendforif f=1n=n+1endifendfor? nreturn (答案:76)2. 求方程9x+4y=2000的所有正整数解的|x-y|的最小值。set talk offclearmin=0for x=1 to 230y=in

2、t(1000-9*x)/4)z=abs(x-y)if 9*x+4*y=1000 and y0 and min0 and maxzmax=zendifendfor? maxset talk onreturn4. 求出100以内的最小的自然数n,使得从1开始的连续n个自然数的平方根之和大于500。*set talk offclears=0for n=1 to 100s=s+n ( 改为 s=s+sqrt(n) )if s500exitendifendfor? sset talk onreturn (答案:83)5. 求出100以内的最大的自然数n,使得算式1+1/(1+2)+1/(1+2+n)的值

3、小于1.9。set talk offclears=0t=0for n=1 to 100s=s+1/nt=t+sif t=1.9exitendifendfor? n-1set talk onreturn6. 求出100以内使得算式1+1/(1*2)+1/(1*2*n)的值大于1.71828的最小自然数n。set talk offcleara=1.00000000s=0.00000000for n=1 to 100a=a*ns=s+aif s800exit endifendfor? nset talk onreturn8. 求出13,1300之间非素数非偶数之和。*set talk offclea

4、rs=0for i=13 to 1300 for j=2 to i if mod(i,j)=0 or mod(i,2)=1 s=s+i exit endif endforendfor?sset talk onreturn (答案:296984)9. 求出100以内使得算式1*3+2*5+n*(2*n+1)的值小于10000的最大的自然数n。set talk offclears=0for n=1 to 100a=n*2*(n+1)s=s+aif s=10000loopendifendfor? n-1set talk onreturn10. 求出200,800内被3除余1并且被5除余3的整数的和。

5、*set talk offclears=0for x=200 to 800if mod(x,3)=1 or mod(x,5)=3 ( 改为 and )s=s+1 ( 改为 s=s+x )endifendfor? sset talk onreturn (答案:20020)11. 已知一个由分数组成的数列:1/2,3/5,8/13,21/34,其特点是:从其中第2个分数起,每个分数的分子都是前一分数的分子分母之和而其分母都是其分子与前一分数的分母之和。试求出此数列的前25项中其值大于0.618的项数。set talk offclearf1=1f2=2n=0for k=1 to 25f=f1/f2i

6、f f0.618n=n+1endiff1=f2f2=f1endfor? nset talk onreturn12. 编写程序,计算10000以内个位数为6且该数能被9整除的所有数之和。set talk offclean=0for I=1 to 10000sw=mod(I,10)if sw=6if mod(I,10)=9n=n+Iendifendifendfor? Nreturn13. 已知数列:1、2、4、7、10、15、,其特点是:相邻两项之差恰好构成自然数列:1、2、3、4、5、。求此数列的前100项中能被4整除的项的个数。set talk offcleara=1k=0for n=1 to

7、 100a=a+nif mod(n,4)=0k=k+1endifendfor? kset talk onreturn14. 设一数列f(n):f(1)=1,当n1时f(n)=1/(f(n-1)+1)。试求出此数列的前20项中小于0.618的项的数目。set talk offclearf=1.000000n=0for k=1 to 20f=1/f+1if f0.618n=n+1endif * ? k,f,nendfor? nset talk onreturn15. 将小于2000且能被4和6中至少一个数整除的所有整数按从小到大顺序排列后,求最后20个数之和。set talk offcleark=

8、0s=0x=2000do while k=20 x=x+1 if mod(x,4)=0 and mod(x,6)=0 s=s+x k=k+1 endifenddo? sset talk onreturn16. 求出100以内使得算式1/(1*2)+1/(2*3)+1/(n*(n+1)的值小于0.952的最大的自然数n。set talk offclears=0for n=1 to 100s=s+1/n*(n+1)if s0.952exitendifendfor? n-1set talk onreturn17. 求出9269和8671的最小公倍数。 算法提示:a与b的最小公倍数是a的倍数中第1个被

9、b整除的数 set talk offcleara=9269b=8671k=ado while mod(k,a)=0 k=k*aendfor? kset talk onreturn18. 求出100以内使算式(1-1/2)+(1/3-1/4)+(1/n-1/(n+1)的值大于0.682的最小的奇数nset talk offclears=0for n=1 to 100a=1/n-1/(n+1)s=s+aif s=0.682exitendifendfor? nset talk onreturn19. 求100010000内的第57个素数。(素数是指只能被1和本身整除的数)*set talk offc

10、leak=0for i=1000 to 10000f=1for j=2 to i (改为for j=2 to i-1 )if mod(i,j)=0f=0exitendifendforif f=0 (改为if f=1 ) k=k+1if k=57exitendifendifendfor? k (改为? i )return (答案:1427)20. 求出100,600内被3除余2并且被5除余3的整数的个数。*set talk offclearn=0for x=100 to 600if mod(x,3*5)=2*3 (改为if mod(x,3)=2 and mod(x,5)=3 )n=x+1 (改为

11、 n=n+1 )endifendfor? nset talk onreturn (答案:33)21. 求满足条件A*B=45678且使A+B的值最小的自然数对A、B中较小的一个数。(提示:设A=B,当A越大时A+B越小)*set talk offclearc=45678k=int(sqrt(c)for a=1 to k (改为 for a=k to 1 step -1 ) b=int(a/c) ( 改为 b= int(c/a) ) if a*b=c a0=b ( 改为 a0=a ) exit endifendfor? a0set talk onreturn (答案:138) 22. 求出99,999内所有能被7和9中至少一个数整除的整数的个数。*set talk offclearn=0for x=99 to 999if mod(x,7)=0 and mod(x,9)=0 (把and改为or)n=n+x ( 改为 n=n+1 )endifendfor? Nset talk onreturn (答案:215)23. 求出100以内使得算式1/(1*1)+1/(2*3)+1/(n*(2n-1)的值大于1.35的最小的自然数n。set tal

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号