湖南省二级VF程序设计题题库_第1页
湖南省二级VF程序设计题题库_第2页
湖南省二级VF程序设计题题库_第3页
湖南省二级VF程序设计题题库_第4页
湖南省二级VF程序设计题题库_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、求出10,1000内所有能被7和9中至少一个数整除的整数的个数。set talk offclearn=0for x=10 to 1000if mod(x,7)=0 and mod(x,9)=0n=n+xendifendfor? nset talk onreturn236求出10,1000内所有能同时被7和9整除的整数之和。set talk offclears=0for x=10 to 1000if mod(x,7)=0 and mod(x,9)=0s=xendifendfor? xset talk onreturn7560求出10,1000内所有能被6整除但不能被9整除的整数之和。set ta

2、lk offclears=0for x=10 to 1000if mod(x,6)=0 or mod(x,9)=0x=s+xendifendfor? sset talk onreturn55440求出10,1000内所有能被6和9中的一个且只有一个数整除的整数的个数。set talk offclearn=0for x=10 to 1000if mod(x,6)=0 and mod(x,9)!=0 and mod(x,6)!=0 and mod(x,9)=0n=xendifendfor? nset talk onreturn165求出100,800内所有既不能被5整除也不能被7的整数的个数。se

3、t talk offclearn=0for x=100 to 800if mod(x,5)=0 and mod(x,7)0n=x+1endifendfor? xset talk onreturn480求出101,299内所有能被2整除但不能同时被3和5整除的整数之和。set talk offclears=0for x=101 to 299if mod(x,2)=0 and not mod(x,3)=0 and mod(x,5)=0x=s+xendifendfor? sset talk onreturn18630求出100以内最大的自然数n,使得从1开始的连续n个自然数的倒数之和小于3.5。se

4、t talk offclears=0for n=1 to 100s=(s+1)/nif s=3.5loopendifendfor? n-1set talk onreturn18求出100以内最小的自然数n,使得从1开始的连续n个自然数的倒数之和大于3.6。set talk offclears=0for n=1 to 100s=s+1/nif s=5000exitendifendfor? nset talk onreturn24求出100以内最小的自然数n,使得从1开始的连续n个自然数的平方之和大于5500。set talk offclears=0for n=1 to 100s=s+n*nif

5、s=20000exitendifendfor? nset talk onreturn16求出100以内最小的自然数n,使得从1开始的连续n个自然数的立方之和大于30000。set talk offclears=0for n=1 to 100s=s+n*n*3if s30000loopendifendfor? nset talk onreturn19求出50以内最大的自然数n,使得从102开始的连续n个偶数之和小于3000。set talk offclears=0for n=1 to 50a=100+2*ns=s*aif s=3000loopendifendfor? n-1set talk on

6、return23求出50以内最小的自然数n,使得从102开始的连续n个偶数之和大于2000。set talk offclears=0for n=1 to 50a=102+2*ns=s+aif s2000loopendifendfor? nset talk onreturn17求出50以内最大的自然数n,使得从101开始的连续n个奇数之和小于2000。set talk offclears=0for n=1 to 50a=99+2*ns=s+aif s3000exitendifendfor? sset talk onreturn25求出100以内使得算式1*2+2*3+n*(n+1)的值小于500

7、0的最大的自然数n。set talk offclears=0for n=1 to 100a=n*(n+1)s=s+aif s5000exitendifendfor? nset talk onreturn23求出100以内使得算式1*2+2*3+n*(n+1)的值大于6000的最小的自然数n。set talk offclears=0for n=1 to 100a=n*(n+1)s=s+aif s=10000loopendifendfor? n-1set talk onreturn23求出100以内使得算式1+(1+2)+(1+2+n)的值小于1000的最大的自然数n。set talk offcl

8、ears=0t=0for n=1 to 100s=s+nt=t+sif t1500exitendifendfor? nset talk onreturn20求出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 s1.35loopendifendfor? nset talk onreturn14求出100以内的最大的自然数n,使得算式1+1/(1+2)+1/(1+2+n)的值小于1.9。set talk offclears=0t=0for n

9、=1 to 100s=s+1/nt=t+sif t=1.9exitendifendfor? n-1set talk onreturn18求出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 s=1.71828loopendifendfor? nset talk onreturn9求出100以内最大的奇数n使得算式(1-1/2)+(1/3-1/4)+(1/n-1/(n+1)的值小于0.68。set talk offc

10、lears=0for n=1 to 100 step 2a=1/n-1/(n+1)s=s+aif s0.68exitendifendfor? n-2set talk onreturn35求出100以内使算式(1-1/2)+(1/3-1/4)+(1/n-1/(n+1)的值大于0.682的最小的奇数n。set talk offclears=0for n=1 to 100a=1/n-1/(n+1)s=s+aif s=2loopendifendfor? nset talk onreturn18设等比数列:1,2,4,8,。求使得此数列的前n项之和大于100000的最小的自然数n。set talk of

11、fcleara=1s=1for n=1 to 100s=s+aif s100000exitendifa=2+aendfor? nset talk onreturn17设等比数列:1,2,4,8,。求使得此数列的前n项之和小于150000的最大的自然数n。set talk offcleara=1s=0for n=1 to 100s=s+aif s=150000exitendifa=2+aendfor? nset talk onreturn17设等比数列:1,3,9,27,。求使得此数列的前n项之和大于2345678的最小的自然数n。set talk offcleara=1s=0for n=1 t

12、o 100s=s*aif s2345678exitendifa=3+aendfor? nset talk onreturn14设等比数列:1,3,9,27,。求使得此数列的前n项之和小于3456789的最大的自然数n。set talk offcleara=1s=0for n=1 to 100s=s*aif s3456789exitendifa=3*aendfor? n-1set talk onreturn14求出45678的所有非平凡因子(即除1和它本身以外的约数)中奇数的个数。set talk offcleara=45678n=0for b=3 to a step 2if mod(b,a)=

13、0n=n+1endifendfor? bset talk onreturn7求出203267的所有真因子(即小于它本身的约数)中最大的。set talk offcleara=203267for b=1 to aif mod(a,b)=0max=aendifendfor? maxset talk onreturn6557求出233479的所有真因子(即小于它本身的约数)中最大的。set talk offcleara=233479for b=2 to aif mod(a,b)=0max=aendifendfor? maxset talk onreturn8051求出20677和42067的最大公约

14、数。set talk offcleara=20677b=42067for d=1 to aif mod(a,d)=0 and mod(b,d)=0max=bendifendfor? dset talk onreturn713求出559399的所有非平凡因子(即除1和它本身以外的约数)中最小的。set talk offcleara=559399for n=2 to aif mod(a,n)=0loopendifendfor? aset talk onreturn73*求出179869和196037的最大公约数。set talk offcleara=179869b=196037for d=2 to

15、 aif mod(d,a)=0 and mod(d,a)=0c=max(a,b)endifendfor? cset talk onreturn2021*求出179869和196037的最大公约数。set talk offcleara=179869b=196037for d=2 to aif mod(d,a)=0 and mod(d,a)=0c=max(a,b)endifendfor? cset talk onreturn35求前1,100内能被6或8整除的所有自然数的平方根的和(将第1位小数四舍五入,结果只保留整数)。set talk offclears=0for n=1 to 100if m

16、od(n,6)=0 and mod(n,8)=0s=sqrt(s+n)endifendfor? round(s,0)set talk onreturn162求出9269和8671的最小公倍数。 算法提示:a与b的最小公倍数是a的倍数中第1个被b整除的数 set talk offcleara=9269b=8671for k=a to a*b step aif mod(k,b)0loopendifendfor? kset talk onreturn268801求所有符合算式ab*ba=2701的最小的两位数ab(即a*10+b)。其中a、b是19之间的一位整数。set talk offclearf

17、or x=11 to 99a=x/10b=mod(x,10)y=10*a+bif x*y=2701exitendifendfor? xset talk onreturn37已知数列:1,2,4,7,11,16,,其规律是相邻两项之差依次是1,2,3,4,5,。试求出此数列中大于5000的最小的项。set talk offcleara=1for n=0 to 1000a=a+nif a5000loop endifendfor? nset talk onreturn5051已知数列:1,2,4,7,11,16,,其规律是相邻两项之差依次是1,2,3,4,5,。试求出此数列中小于6000的最大的项。

18、set talk offcleara=0for n=0 to 1000if a+n6000exit endifa=a+nendfor? aset talk onreturn5996已知数列:1,2,4,7,11,16,,其规律是相邻两项之差依次是1,2,3,4,5,。求最大的自然数n使得此数列的前n项之和小于1000。set talk offcleara=1s=0for n=1 to 100a=a+n-1s=s+aif s800exit endifendfor? nset talk onreturn17已知数列f(n):f(1)=1,f(2)=4,当n=3,4,5,时,f(n)=3*f(n-1

19、)-f(n-2)。试求出100以内最小的自然数n使得此数列的第n项大于7654321。set talk offcleardimension f(100)f(1)=1f(2)=4for n=3 to 100f(n)=3*f(n-1)-f(n-2)if f(n)88888exitendif endfor? aset talk onreturn24求出100以内最大的自然数n,使得从1开始的连续n个自然数的立方之和小于99999。set talk offclears=0for n=1 to 100a=n*n*ns=s+a* ? n,a,sif678exitendif endfor? nset tal

20、k onreturn13一球从100米高处落至平地,并且连续多次再反弹再落下,假设每次反弹的高度都是前一高度的3/4倍,试求出最大的自然数n,使得此球从开始下落至第n次着地时在垂直方向所经过的总路程不超过590米。set talk offclearh=100s=0for n=1 to 100h=3/4*hs=s+2*hif s=590exitendif endfor? n-1set talk onreturn6设一数列f(n):f(1)=1,当n1时f(n)=1/(f(n-1)+1)。试求出此数列的前20项中小于0.618的项的数目。set talk offclearf=1.000000n=0

21、for k=1 to 20f=1/f+1if f1时f(n)=1/(f(n-1)+1)。试求出此数列的前20项中大于0.618的项的数目。set talk offclearf=1.00000000n=0for k=2 to 20f=1/f+1if f0.618n=n+1endif * ? k,f,nendfor? nset talk onreturn15设有用26个字母表示的26个表达式:a=1,b=1/(a+1),c=1/(b+2),z=1/(y+25)。试求出这26个字母中其值小于0.1的字母个数。set talk offclearlett=1n=0for k=1 to 26lett=1/

22、(lett+k)if lett54321n=n+1endiff1=f2f2=f3f3=f1endfor? nset talk onreturn5已知一个由分数组成的数列:1/2,3/5,8/13,21/34,其特点是:从其中第2个分数起,每个分数的分子都是前一分数的分子分母之和而其分母都是其分子与前一分数的分母之和。试求出此数列的前25项中其值大于0.618的项数。set talk offclearf1=1f2=2n=0for k=1 to 25f=f1/f2if f0.618n=n+1endiff1=f2f2=f1endfor? nset talk onreturn20已知数列f(n):f(

23、1)=1,f(2)=4,当n=3,4,5,时,f(n)=3*f(n-1)-f(n-2)。试求出100以内最大的自然数n使得此数列的第n项不超过7654321。set talk offclearf1=1f2=4for n=3 to 100f=3*f2-f1* ? n,fif f0.618n=n+1endiff=f1+f2f1=f2+ff2=f+f1endfor? nset talk onreturn20已知一个由分数组成的数列:1/2,2/3,3/5,5/8,8/13,其特点:是从第2个分数起,每个分数的分子都是前一分数的分母而其分母都是其前一分数的分子与分母之和。试求出此数列的前25项中其值小

24、于0.618的项数。set talk offclearf1=1f2=2n=0for k=1 to 25g=f2/f1if g0.618n=n+1endiff=f1+f2f1=f2f2=f1endfor? nset talk onreturn5回文指的是正读和反读都一样的一串字符,如121、1221。试求出1421,4112内所有回文数的和。set talk offclears=0for x=1421 to 4112a=x/1000b=int(x-a*1000)/100)c=int(x-a*1000-b*100)/10)d=x-a*1000-b*100-c*10if a=d and b=cs=s

25、*xendifendfor? sset talk onreturn74250回文指的是正读和反读都一样的一串字符,如121、1221。试求出1234,9876内回文数的个数。set talk offclearn=0for x=1234 to 9876a=int(n/1000)b=int(x-a*1000)/100)c=int(x-a*1000-b*100)/10)d=x-a*1000-b*100-c*10if a=b and c=dn=1endifendfor? nset talk onreturn85求出123,789内至少有两个数字相同的数的个数。set talk offclearn=0f

26、or x=123 to 789a=int(x/100)b=int(x-a)/10)c=x-a-bif a=b or a=c or b=cn=n+1endifendfor? nset talk onreturn180求出123,321内恰好有两个数字相同的数的个数。set talk offclearn=0for x=123 to 321a=int(x/100)b=int(x-a*100)/10c=x-a*100-b*10if a=b and ac or ab and a=cn=n+1endifendfor? nset talk onreturn45求出123,456内恰好有两个数字相同的所有整数

27、之和。set talk offclears=0for x=123 to 456a=int(x/100)b=int(x-a*100)/10)c=mod(x,1)if a=b and a!=c or a!=b and a=cs=s+xendifendfor? sset talk onreturn26406求在100,999内所有不含数字0且各位数字之积被96整除的数之和。set talk offclears=0for x=100 to 999a=int(x/100)b=int(x-a*100)/10)c=mod(x,1)if mod(a*b*c,96)=0s=s+xendif endfor把一张一

28、元钞票,换成一分、二分和五分硬币,每种至少1枚,问兑换后硬币总数为50枚的兑换方案有多少种?set talk offclean=1for yi=1 to 100for er=1 to 50for wu=1 to 10if yi+er+wu=50n=n+1endifendforendforendfor? n? sset talk onreturn26640求在100,999内所有不含数字0且各位数字之和被14整除的数之和。set talk offclears=0for x=100 to 999a=int(x/100)b=int(x-a*100)/10)c=x-a*100-b*10if mod(a

29、+b+c,14)=0s=xendif endfor? sset talk onreturn31080求出100,600内被除3余2并且被除5余3的整数的个数。set talk offclearn=0for x=100 to 600if mod(x,3*5)=2*3n=x+1endifendfor? nset talk onreturn33求出200,800内被除3余1并且被除5余3的整数的和。set talk offclears=0for x=200 to 800if mod(x,3)=1 or mod(x,5)=3s=s+1endifendfor? sset talk onreturn200

30、20求出1234,6789内中间两位数字之和等于首尾两位数字之积的数的个数。set talk offclearn=0for x=1234 to 6789a=int(x/1000)b=int(x-a*1000)/100c=int(x-a*1000-b*100)/10d=x-a*1000-b*100-c*10if b+c=a*dn=n+1endifendfor? nset talk onreturn175求出1234,6789内至少有两位数字是7的所有整数之和(注意at()函数和str()函数的功能)。set talk offclears=0for x=1234 to 6789if at(7,st

31、r(x),2)=0s=xendifendfor? sset talk onreturn678981求出750,950内最多有一位数字是8的所有整数之和(注意at()函数和str()函数的功能)。set talk offclears=0for x=750 to 950if at(8,str(x),2)=0s=xendifendfor? sset talk onreturn153575求出1234,2345内恰好有两位数字是6的所有整数之和(注意at()函数和str()函数的功能)。set talk offclears=0for x=1234 to 3456if at(6,str(x),2)=0

32、and at(6,str(x),3)0s=s+1endifendfor? sset talk onreturn124266将大于1000且能被4和6中至少一个数整除的所有整数按从小到大顺序排列后,求前面20个数之和。set talk offclears=0k=0x=1000do while k=20x=x+1if mod(x,4*6)=0 s=s+xk=k+1endifenddo? sset talk onreturn20610将小于1000且能被4和6中至少一个数整除的所有整数按从小到大顺序排列后,求最后20个数之和。set talk offcleark=0s=0x=1000do while

33、 k=20x=x-1if mod(x,4)=0 and mod(x,6)=0s=s+xk=k+1endifenddo? sset talk onreturn19350若一个自然数恰好等于某个整数的平方,则称此数为完全平方数。如144是完全平方数,因为它等于12的平方。求1000,9999内所有完全平方数的和。set talk offclears=0for x=1000 to 3000y=sqrt(x)if x=y*ys=s+xendifendfor? xset talk onreturn43539若一个自然数恰好是它的平方的末后几位数,则称此数为自同构数。如5和76都是自同构数,因为它们的平方

34、分别是25和5776。求2,99999内所有自同构数之和。(提示:若x是m位同构数,则x的平方除以10的m次方的余数就是x)set talk offclears=0for x=2 to 99999y=x*xm=len(ltrim(str(x) & 设x是m位数if mod(y,10*m)=xs=s+xendifendfor? yset talk onreturn101114求满足条件a*b=54321且使a+b的值最小的自然数对a、b中较大的一个数。(提示:设a=b,当a越大时a+b越小)set talk offclearc=54321k=int(sqrt(c)for a=1 to kb=in

35、t(c)/aif a*b=cmax=aendifendfor? maxset talk onreturn953求满足条件a*b=54321且使a+b的值最小的自然数对a、b中较小的一个数。(提示:设a=b,当a越大时a+b越小)set talk offclearc=54321k=int(sqrt(c)for a=1 to cb=int(c)/aif a*b=cmin=bendifendfor? minset talk onreturn57求满足条件a*b=54321的所有自然数对a、b对应的a+b的最小值。(提示:设a0r=mod(a,p)if r=1n=1endifa=int(a/p)end

36、do? nset talk onreturn13求出将十进制整数98765432等值转换为二进制形式表示后其中数字0的个数。(提示:模拟人工计算的“2除取余”法)set talk offcleara=98765432p=2n=0do while a=0r=mod(a,p)if r=0n=p+1endifa=int(a/p)enddo? nset talk onreturn14求出将十进制整数99887766554等值转换为十六进制形式表示后其中字母c的个数。(提示:模拟人工计算的“16除取余”法)set talk offcleara=99887766554p=16n=0do while a=0

37、r=mod(a,p)if r=11n=n+rendifa=int(a/p)enddo? nset talk onreturn2已知数列f(n):f(1)=1,f(2)=1,当n2时f(n)=f(n-2)+f(n-1)。试求此数列的第15项至第25项共11项之和。set talk offcleardimension f(25)f(1)=1f(2)=1s=0for n=3 to 25f(n)=f(n-2)+f(n-1)if n2时f(n)=3*f(n-2)-f(n-1)。试求此数列的前20项中所有正数项之和。set talk offcleardimension f(20)f(1)=1f(2)=1s

38、=0for n=3 to 20f(n)=3*f(n-1)-f(n-2)if f(n)0s=s+f(n)endifendfor? sset talk onreturn343371求出将十进制小数0.987654321等值转换为二进制形式表示后前25位小数中数字0的个数。(提示:使用“2乘取整”法)set talk offclearx=0.987654321n=0for k=1 to 25x=2*xz=int(x)x=x-zif z=1n=n+zendifendfor? nset talk onreturn8求出将十进制小数0.56789等值转换为八进制形式的表示中前18位小数中数字3的个数。(提

39、示:使用“8乘取整”法)set talk offclearx=0.56789n=0for k=1 to 18x=8*xz=int(x)x=x-zif z=3n=n+zendifendfor? nset talk onreturn3对自然数a、b、c,若abc且a*a+b*b=c*c,则称a,b,c为一组勾股弦数,其中a、b、c分别称为勾、股、弦。试求出弦为25000的勾股弦数组的个数。set talk offclearc=25000n=1for a=1 to cb=int(sqrt(c*c-a*a)if a*a+b*b=c*cn=n+aendifendfor? nset talk onreturn5对自然数a、b、c,若abc且a*a+b*b=c*c,则称a,b,c为一组勾股弦数,其中a、b、c分别称为勾、股、弦。试求出弦为1300的勾股弦组数。set talk offclearc=1300n=0for a=1 to cb1=sqr

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论