编程题及程序下发

上传人:飞*** 文档编号:7802329 上传时间:2017-10-08 格式:DOC 页数:35 大小:133KB
返回 下载 相关 举报
编程题及程序下发_第1页
第1页 / 共35页
编程题及程序下发_第2页
第2页 / 共35页
编程题及程序下发_第3页
第3页 / 共35页
编程题及程序下发_第4页
第4页 / 共35页
编程题及程序下发_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《编程题及程序下发》由会员分享,可在线阅读,更多相关《编程题及程序下发(35页珍藏版)》请在金锄头文库上搜索。

1、11 1 到 1000 内既能被 5 整除又能被 7 整除的奇数之和set talk offcleari=1s=0do while i0IF MOD(N,2)=0A=A+NB=B+1ENDIFINPUT 请输入一个整数: TO NENDDO?A,BSET TALK ON 7 编写从键盘上输入 5 个数,统计其中奇数的个数程序。set talk offa=0for j =1 to 5input “请输入第”+str(j,2)+”数” to mif int(m/2)=x and x1?STR(X)+是素数 ELSE ?STR(X)+不是素数ENDIF11、统计 200 以内的素数的个数。set t

2、alk offn=0for i=1 to 200flag=1*flag=1 代表它是素数。flag=0 代表它不是素数for j=2 to i-1if mod(i,j)=0flag=0endif8endforif flag=1n=n+1endifendfor?nset talk onreturn12、求解世界上的有名的“百鸡问题”:鸡翁一,值钱五,鸡母一,值钱三,鸡邹三,值钱一。百钱买百鸡,问鸡翁、鸡母和鸡邹各几何?写出当鸡翁为 8 时,鸡母有几只?clearn=0for i=1 to 19for j=1 to 32for k=1 to 99if i*5+j*3+k/3=100 and i+j

3、+k=100n=n+1?i,j,kif i=8a=ib=j9c=kendifendifendforendforendfor?n?a,b,c13、编写程序输出下面的图形。(必须用 FOR 语句完成)* SET TALK OFFCLEARFOR I= 4 TO 1 STEP -1?SPAC(8-2*I)FOR J=2*I-1 TO 1 STEP -1?*ENDFOR? ENDFOR10SET TALK ONRETURN14、输入两个任意整数,求最小公倍数,并显示输出最小公倍数。set talk offclearinput x= to xinput y= to ymax=xif yxmax=yend

4、ifa=maxdo while a=n?str(n,5)S=S+Nj=j+1if int(j/5)=j/5?endifendifn=n+112enddo?S=,Sreturn16、求出满足下列条件的三位数:(1)此三位数的三位数字各不相同;(2) 此三位数等于它的各位数字三方和。并统计这种三位数的个数。set talk offclearn=0for i =100 to 999a=i%10b=int(i%100/10)c=int(i/100)if a3+b3+c3 =i and ac and a015?is=s+iendifendfor?sset talk on 20、百马驮百瓦问题:大马、小马

5、和马驹共 100 匹,共要驮100 瓦,大马一驮三,小马一驮二,马驹二驮一,三种马都驮,共有多少种组合?set talk offclearn=0for x=1 to 33for y=1 to 50 for z=1 to 100if 3*x+y*2+z*1/2=100 and x+y+z=100n=n+1?x,y,zendifendforendforendfor16?nset talk on21、*回文数指的是正读和反读都是一样的一串字符,如121,1221。试求出1000,3000 以内的回文数并统计它的个数。set talk offclearn=0for i=1000 to 3000a=in

6、t(i/1000)b=int(i%1000/100)c=int(i%100/10)d=i%10if 1000*d+100*c+10*b+a=in=n+1?iendifendfor?nset talk on22 、有 s(n)=1+2+3+.+n,求 s(1) ,s(2),.,s(100)中能同时被 5 和 7 整除的数的个数。17set talk offclearn=0s=0for i=1 to 100s=s+iif mod(s,5)=0 and mod(s,7)=0 n=n+1endifendfor?nset talk on23、将大于 500 且能被 4 和 6 中至少一个数整除的所有整数

7、的前面 20 个数之和。set talk offcleark=0s=0x=500do while x=500x=x+1if mod(x,4)=0 or mod(x,6)=018s=s+xk=k+1endifif k=20exitendifenddo?sset talk on24、求100,200 内被 5 或 7 整除的所有自然数之和的平方根。(将第 1 位小数四舍五入,结是只保留一位小数)SET TALK OFFclears=0for n=100 to 200if mod(n,5)=0 or mod(n,7)=0s=s+nendifendfors=sqrt(s)?round(s,1)19se

8、t talk on25、求6, 2000内能被 7 整除且至少有一位数字为 6 的整数个数。set talk offclearn=0for x=6 to 2000if at(6,str(x)0 and mod(x,7)=0 n=n+1endifendfor?nset talk on26、从键盘输入一段字符(包含英文字母和数字),计算所含英文字母的个数。SET TALK OFFCLEARAA=SPACE(40)M=0BB=5,10 SAY 请输入一段字符: GET AAREAD20Y=LEN(allTRIM(AA)FOR X=1 TO YP=SUBStr(AA,x,1)IF P=A and P=

9、aand P1?STR(X)+是素数 ELSE ?STR(X)+不是素数ENDIFset talk on30 编程:从键盘输入任意多个数,输入 0 或 1,退出输入,判断这些数是否为素数,并按从小到大或从大到小两种顺序输出。(素数是指只能被 1和本身整除的数)SET TALK OFFCLEARn=1declare sushu100do while .t.INPUT 请输入一个数: TO xif x=0 or x=123exitendifflag=0for i=2 to x-1IF Mod(x,i)=0flag=1exit ENDIF endforif flag=0sushun=xn=n+1en

10、dif ENDdo asort(sushu,1,n-1) &do while 结束后素数的个数已经加 1,则排序的个数相应减 1。for i=1 to n-1? sushuiendfor31、求共有几组 i、j、k 符合算式 ijk+kji=1333,其中 i、j、k是 09 之间的一位整数。set talk off24clears=0for i=0 to 9for j=0 to 9for k=0 to 9if i*100+j*10+k+k*100+j*10+i=1333s=s+1?i,j,kendifendforendforendfor?sset talk on32、把一张一元钞票,换成一分

11、、二分和五分硬币,每种至少 5 枚,问有多少种方案?205set talk offcleas=0for i=5 to 65for j=5 to 35for k=5 to 1725if k*5+j*2+i=100?i,j,ks=s+1endifendforendforendfor?sset talk onreturn33、求解世界上的有名的“百鸡问题”:鸡翁一,值钱五,鸡母一,值钱三,鸡邹三,值钱一。百钱买百鸡,问鸡翁、鸡母和鸡邹各几何?n=0for i=1 to 19for j=1 to 32for k=1 to 99if i*5+j*3+k/3=100 and i+j+k=100n=n+1?

12、i,j,kendifendfor26endforendfor?n34、求 S=1/1!+1/2!+1/3!+.+1/10!的值(按四舍五入方式保留两位小数).(1.72)set talk offcleart=1s=0for n=1 to 10t=t*1/ns=s+tendfor?round(s,2)set talk on35、求 s=1-1/2+1/3-1/4+.+1/99-1/100 的值(将小数点后第三位四舍五入方式保留两位小数)方法一:set talk offclears=0for n=1 to 10027s=s+(-1)(n+1)*1/nendfor?round(s,2)set tal

13、k on方法二:set talk offclears=0for n=1 to 100 step 2s=s+1/nendforfor n=2 to 100 step 2s=s-1/nendfor?round(s,2)set talk onreturn36、从键盘输入任意多个数据,0 或 1 退出,对它们进行从大到小或从小到大输出!SET TALK OFFCLEARn=128declare sushu100do while .t.INPUT 请输入一个数: TO xif x=0 or x=1exitendifsushun=xn=n+1 ENDdo asort(sushu,1,n-1)for i=1

14、 to n-1? sushuiendforset talk on37、*从键盘输入任意多个数据,0 或 1 退出,把能被 4 或 6 整除的数进行从大到小或从小到大输出!SET TALK OFFCLEARn=1declare sushu100do while .t.INPUT 请输入一个数: TO x29if x=0 or x=1exitendifif mod(x,4)=0 or mod(x,6)=0sushun=xn=n+1 endif ENDdo asort(sushu,1,n-1)for i=1 to n-1? sushuiendforset talk on38、 *求斐波那契数列 1,

15、1,2,3,5,8,13,21,34,的前 30 项的和。该数列从第 3 项开始每项等于前两项之和。3524577SET TALk OFFCLEAS=2F1=1F2=1I=230DO WHILE I=7654321exitendifendfor? nset talk on32return41、求等比数列 1,2,4,8,16,.,的前若干项累加和 S,使 S 的值首次大于 100000。set talk offcleart=1s=0do while s=100000s=s+tt=t*2enddo?sset talk on42、*计算 12+22+32+42+N2 的值并显示输出结果SET TALK OFFcl

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 企业文档

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