计算机程序设计题精选_第1页
计算机程序设计题精选_第2页
计算机程序设计题精选_第3页
计算机程序设计题精选_第4页
计算机程序设计题精选_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、下列程序设计题目均选自等考题库,如果你运气好,考试碰上这些题目的可能性是很大的,请同学们练习,即使做不出来,记下结果也不是难事1把一张一元钞票,换成一分、二分和五分硬币,每种至少8枚,问有多少种方案? 答案:80 clean=0for a=8 to 100for b=8 to 50for c=8 to 20if a+2*b+5*c=100n=n+1endifendforendforendfor?n2回文数是指正读和反读都一样的正整数。例如3773是回文数。求出1000,9999以内的所有回文数的个数。 答案:90 clean=0for i=1000 to 9999a=i%1000b=mod(i

2、%100,10)c=mod(i%10,10)d=mod(i,10)if a=d and c=dn=n+1endifendfor?n3倒勾股数是满足公式:1/A2+1/B2=1/C2的一组正整数(A,B,C),例如,(156,65,60)是倒勾股数,因为:1/1562+1/652=1/602。假定ABC,求A,B,C均小于或等于100的倒勾股数有多少组?答案:5 clean=0for c=1 to 100for b=c+1 to 100a=(b*c)/(sqrt(b2-c2)if a%1=0 and abn=n+1endifendforendfor?n4倒勾股数是满足公式:1/A2+1/B2=1

3、/C2的一组正整数(A,B,C),例如(156,65,60)是倒勾股数,因为:1/1562+1/652=1/602。假定ABC,求A,B,C之和小于100的倒勾股数有多少组? 答案:2 clean=0for c=1 to 98for b=c+1 to 99for a=b+1 to 100if 1/(a2)+1/(b2)=1/(c2) and a+b+cBC,且要求A,B,C均小于或等于100,求满足倒勾股数公式的A,B,C之和的最大值是多少? 答案:235 clean=0for c=1 to 100for b=c+1 to 100a=(b*c)/(sqrt(b2-c2)if a%1=0 and

4、 abk=a+b+cif nBC,且要求A,B,C均小于或等于100,求满足倒勾股数公式的各组正整数(A,B,C)中A的值的和是多少? 答案:300 clean=0for c=1 to 100for b=c+1 to 100a=(b*c)/(sqrt(b2-c2)if a%1=0 and abn=n+aendifendforendfor?n7倒勾股数是满足公式:1/A2+1/B2=1/C2的一组正整数(A,B,C),例如(156,65,60)是倒勾股数,因为:1/1562+1/652=1/602。假定ABC,且要求A,B,C均小于或等于100,求满足倒勾股数公式的各组正整数(A,B,C)中C值

5、的和是多少? 答案:180 clean=0for c=1 to 100for b=c+1 to 100a=(b*c)/(sqrt(b2-c2)if a%1=0 and abn=n+cendifendforendfor?n8A,B,C三个正整数,当满足1/A2+1/B2=1/C2关系时,称为倒勾股数。求130A+B+C150的倒勾股数有多少组。 答案:1 clean=0for c=1 to 150for b=c+1 to 150a=(b*c)/(sqrt(b2-c2)if a%1=0 and a+b+c130 and abn=n+1?a?b?cendifendforendfor?n 其中a=60

6、 b=45 c=369斐波那契数列的前二项是1,1,以后每一项都是前面两项之和。求前30个斐波那契数之和。答案: cleas=0a=1b=1for i=1 to 15s=s+a+ba=a+bb=a+bendfor?s10斐波那契数列的前二项是1,1,其后每一项都是前面两项之和,求:以内最大的斐波那契数? 答案: cleaa=1b=1do while a=a=a+bif a=k=aendifb=a+bif b=k=bendifenddo?K或cleaa=1b=1do while b=a=a+bb=a+benddo?a11斐波那契数列的前二项是1,1,以后每一项都是前面两项之和。求以内有多少个斐波

7、那契数? 答案:35 cleaa=1b=1n=2do while a=a=a+bif a=n=n+1endifb=a+bif b=n=n+1endifenddo?n12勾股弦数是满足公式:A2+B2=C2(假定ABC)的一组正整数(A,B,C),例如,(3,4,5)是勾股弦数,因为:32+42=52。求A,B均小于25且A+B+C=100的勾股弦数的个数。 答案:11 clean=0for a=1 to 23for b=a+1 to 24c=sqrt(a2+b2)if c%1=0n=n+1endifendforendfor?n13勾股弦数是满足公式:A2+B2=C2(假定ABC)的一组正整数(

8、A,B,C),例如,(3,4,5)是勾股弦数,因为:32+42=52。求A,B,C均小于或等于100的勾股弦数中A+B+C的最大值。 答案:240 cleamax=0for a=1 to 100for b=a+1 to 100c=sqrt(a2+b2)if c%1=0 and c=100k=a+b+cif maxkmax=kendifendifendforendfor?max14勾股弦数是满足公式:A2+B2=C2(假定ABb and c=100n=n+1endifendforendfor?n或clean=0for a=1 to 100for b=a+1 to 100for c=b+1 to

9、100if a2+b2=c2n=n+1endifendforendforendfor?n15勾股弦数是满足公式:A2+B2=C2(假定ABC)的一组正整数(A,B,C),例如,(3,4,5)是勾股弦数,因为:32+42=52。求A,B,C之和小于100的勾股弦数的个数。 答案:17 clean=0for a=1 to 99for b=a+1 to 99for c=b+1 to 99if a2+b2=c2 and a+b+c100n=n+1endifendforendforendfor?n16勾股弦数是满足公式:A2+B2=C2(假定AB100n=n+1endifendforendforendf

10、or?n17梅森尼数是指能使2n-1为素数的数n,求1,21范围内有多少个梅森尼数? 答案:7 cleai=0for n=21 to 1 step -1a=2n-1f=1for j=2 to int(sqrt(a)if a%j=0f=0exitendifendforif f=1 and a1?ni=i+1endifendfor?i18梅森尼数是指能使2n-1为素数的数n,求1,21范围内最大的梅素尼数? 答案:19 cleafor n=21 to 1 step -1a=2n-1f=1for j=2 to int(sqrt(a)if a%j=0f=0exitendifendforif f=1 a

11、nd a1?nexitendifendfor19某些分数的分子和分母都是二位正整数的真分数具有下列特点:如果将该分数的分子的两位数字相加作分子,而将该分数的分母的两位数字相加作分母,得到的新分子跟原分子相等。例如,63/84=(6+3)/(8+4)。试求具有这样特点的真分子的个数。 答案:100 clean=0for i=10 to 99for j=i+1 to 99a=int(i/10)b=i%10c=int(j/10)d=j%10if i/j=(a+b)/(c+d)n=n+1endifendforendfor?n20某些分数的分子和分母都是二位正整数的真分数具有下列特点:如果将该分数的分子

12、的两位数字相加作分子,而将该分数的分母的两位数字相加作分母,得到的新分子跟原分子相等。例如,63/84=(6+3)/(8+4)。试求所有具有这种特点的真分子(非约简真分数)的分子与分母之和的和。 答案:10134 clean=0for i=10 to 99for j=i+1 to 99a=int(i/10)b=i%10c=int(j/10)d=j%10if i/j=(a+b)/(c+d)n=n+i+jendifendforendfor?n21某些分数的分子和分母都是二位正整数的真分数具有下列特点:如果将该分数的分子的两位数字相加作分子,而将该分数的分母的两位数字相加作分母,得到的新分子跟原分子

13、相等。例如,63/84=(6+3)/(8+4)。试求所有具有这样特点的真分子(非约简真分数)的分子之和。 答案:3378 clean=0for i=10 to 99for j=i+1 to 99a=int(i/10)b=i%10c=int(j/10)d=j%10if i/j=(a+b)/(c+d)n=n+iendifendforendfor?n22某些分子和分母都是二位正整数的真分数具有下列特点:如果将该分数的分子个位数和分母十位数同时去掉,所得结果正好等于原分数约分后的结果,例如16/64=1/4,求满足上述条件的所有真分数个数。 答案:48 clean=0for i=10 to 99for

14、 j=i+1 to 99a=int(i/10)b=j%10if i/j=a/bn=n+1endifendforendfor?n23求200,300之间最小的一个有奇数个不同因子的整数。 答案:225 cleafor i=200 to 300 n=0for j=1 to iif i%j=0n=n+1endifendforif n%2=1?iexitendifendfor24求300,400之间最小的一个有奇数个不同因子的整数。 答案:324 cleafor i=300 to 400 n=0for j=1 to iif i%j=0n=n+1endifendforif n%2=1?iexitendi

15、fendfor25求200,300之间第二大有奇数个不同因子的整数。 答案:256 cleas=0for i=300 to 200 step -1n=0for j=1 to iif i%j=0n=n+1endifendforif n%2=1s=s+1if s=2?iexitendifendifendfor26求100,200之间最大的有奇数个不同因子的整数。 答案:196 cleafor i=200 to 100 step -1n=0for j=1 to iif i%j=0n=n+1endifendforif n%2=1?iexitendifendfor27求666,777范围内素数的个数。

16、答案:16 cleas=0for i=666 to 777 f=1for j=2 to int(sqrt(i)if i%j=0f=0exitendifendforif f=1s=s+1endifendfor?s28求2,500之间的所有素数的和。答案:21536 cleas=0for i=2 to 500 f=1for j=2 to int(sqrt(i)if i%j=0f=0exitendifendforif f=1s=s+iendifendfor?s29求444,666范围内最大的素数是多少? 答案:661 cleafor i=666 to 444 step -1f=1for j=2 to

17、 int(sqrt(i)if i%j=0f=0exitendifendforif f=1?iexitendifendfor30求3-1000之间最大的五个素数之和。 答案:4919 clean=0s=0for i=1000 to 3 step -1f=1for j=2 to int(sqrt(i)if i%j=0f=0exitendifendforif f=1n=n+1s=s+iif n=5exitendifendifendfor?s31求351,432之间所有既不能被3整除,又不能被8整除的正整数的个数。 答案:47 clea n=0for i=351 to 432if i%30 and i

18、%80n=n+1endifendfor?n32求正整数1,500中,能同时满足用3除余2,用5除余3,用7除余2的所有正整数的和。 答案:1165 clea n=0for i=1 to 500if i%3=2 and i%7=2 and i%5=3n=n+iendifendfor?n33求1,5000之间能同时被3和7整除的数的个数。 答案:238 clea n=0for i=1 to 5000if i%3=0 and i%7=0n=n+1endifendfor?n34求1,5000之间能被3或7整除的数的个数。 答案:2142 clea n=0for i=1 to 5000if i%3=0

19、or i%7=0n=n+1endifendfor?n35求方程X3-2X-5=0在区间1.5,2.5上的一个实根。要求:按四舍五入的方式精确到小数点后第二位。 答案:2.09 cleamin=10000for x=1.5 to 2.5 step 0.0001k=abs(x3-2*x-5)if minkmin=kendifendforfor x=1.5 to 2.5 step 0.0001if min=abs(x3-2*x-5)?round(x,2)exitendifendfor36求方程X2-3*X+1=0在区间(0,1)内的解。要求:按四舍五入的方式精确到小数点后第二位。 答案:0.38 c

20、leamin=1000for x=0 to 1 step 0.0001k=abs(x2-3*x+1)if minkmin=kendifendforfor x=0 to 1 step 0.0001if min=abs(x2-3*x+1)?round(x,2)exitendifendfor37求方程8x-5y=3,在|x|=150,|y|=200内的整数解。试问这样的整数解中|x|+|y|的最大值是多少? 答案:323 cleamax=0for x=-150 to 150y=(8*x-3)/5if y%1=0 and y=-200k=abs(x)+abs(y)if maxkmax=kendifen

21、difendfor?max38求方程8x-5y=3,在|x|=150,|y|=200内的整数解。试问这样的整数解中x+y的最大值是多少? 答案:314 cleamax=-350for x=-150 to 150y=(8*x-3)/5if y%1=0 and y=-200k=x+yif maxkmax=kendifendifendfor?max39若一个四位正整数是另一个正整数的平方,且各位数字的和是一个平方数,则称该四位正整数是“四位双平方数”。例如:由于7396=862,且7+3+9+6=25=52,则称7396是“四位双平方数”。求所有“四位双平方数”中最大的一个“四位双平方数”。 答案:

22、9025 cleaf=1for i=9999 to 1000 step -1a=int(i/1000)b=mod(int(i/100),10)c=mod(int(i/10),10)d=i%10for j=1 to 6if sqrt(i)%1=0 and a+b+c+d=j2?if=0exitendifendforif f=0exitendifendfor40若一个四位正整数是另一个正整数的平方,且各位数字的和是一个平方数,则称该四位正整数是“四位双平方数”。例如:由于7396=862,且7+3+9+6=25=52,则称7396是“四位双平方数”。求所有“四位双平方数”的个数。 答案:17 cl

23、ean=0for i=1000 to 9999a=int(i/1000)b=mod(int(i/100),10)c=mod(int(i/10),10)d=i%10for j=1 to 6if a+b+c+d=j2 and sqrt(i)%1=0n=n+1endifendforendfor?n41若两素数之差为2,则称两素数为双胞胎数,问31,600之间有多少对双胞胎数。 答案:21 clean=0for i=33 to 600f=1for j=2 to int(sqrt(i)if i%j=0f=0exitendifendforif f=1for j=2 to int(sqrt(i-2)if (

24、i-2)%j=0f=0exitendifendforif f=1n=n+1endif endifendfor?n42若两个素数之差为2,则称这两个素数为双胞胎数。求出200,1000之内有多少对双胞胎数。答案:20 clean=0for i=200 to 1000f=1for j=2 to int(sqrt(i)if i%j=0f=0exitendifendforif f=1for j=2 to int(sqrt(i-2)if (i-2)%j=0f=0exitendifendforif f=1n=n+1endif endifendfor?n43若某整数平方等于某两个正整数平方之和的正整数称为弦

25、数。例如:由于32+42=52,则5为弦数,求100,200之间最大的弦数。 答案:130 44若某整数平方等于某两个正整数平方之和的正整数称为弦数。例如:由于32+42=52,则5为弦数,求100,200之间弦数的数目。 答案:4clean=0for i=1 to 200for j=i to 200k=sqrt(i2+j2)if k=100 and mod(k,1)=0 n=n+1?k?i?jendif endforendfor?n45若两个自然连续数乘积减1后是素数,则称此两个自然连续数为友数对,该素数称为友素数,例:2*3-1=5,因此2与3是友数对,5是友素数,求40,119之间友素数

26、对的数目。 答案:30 cleak=0for i=40 to 118n=i*(i+1)-1for j=2 to int(sqrt(n)f=1if n%j=0f=0exitendifendforif f=1k=k+1endifendfor?k46若某整数N的所有因子之和等于N的倍数,则N称为多因子完备数,如数28,其因子之和1+2+4+7+14+28=56=2*28,28是多因子完备数。求1,200之间有多少个多因子完备数。 答案:4 cleak=0for i=1 to 400s=0for j=1 to iif i%j=0s=s+jendifendforif s%i=0k=k+1endifend

27、for?k47若某整数N的所有因子之和等于N的倍数,则N称为多因子完备数,如数28,其因子之和1+2+4+7+14+28=56=2*28,28是多因子完备数。求1,500之间有多少个多因子完备数。 答案:5 cleak=0for i=1 to 500s=0for j=1 to iif i%j=0s=s+jendifendforif s%i=0k=k+1endifendfor?k48若(x,y,z)满足方程:x2+y2+z2=552(注:要求xyz),则(x,y,z)称为方程的一个解。试求方程的整数解(包括负整数解)的个数。 答案:62 clean=0s=0for z=-55 to 55for

28、y=z+1 to 55if 552-y2-z2y or x2y)n=n+1if x1y and x2yn=n+1if x1=0s=s+1endifendifendifendforendfor?n-s49设某国今年的国民生产总值为45600亿元,若今后每年以8%的增长率增长,多少年后能实现国民生产总值翻两番? 答案:19 cleaa=45600n=0do while a45600*4n=n+1a=a*(1.08)enddo?n50设某国今年的国民生产总值为45600亿元,若今后每年以9%的增长率增长,计算多少年后能实现国民生产总值翻一番? 答案:9 cleaa=45600n=0do while

29、a45600*2n=n+1a=a*(1.09)enddo?n51设某四位数的各位数字的平方和等于100,问共有多少个这种四位数? 答案:49 clean=0for i=1000 to 9999a=int(i/1000)b=mod(int(i/100),10)c=mod(int(i/10),10)d=i%10if a2+b2+c2+d2=100n=n+1endifendfor?n52设某四位数的千位数字和十位数字的和等于百位数字和个位数字的积,例如,对于四位数:9512,9+1=5*2,试问这样的四位数有多少个? 答案:207 clean=0for i=1000 to 9999a=int(i/1

30、000)b=mod(int(i/100),10)c=mod(int(i/10),10)d=i%10if a+c=b*dn=n+1endifendfor?n53设有6个十进制数字a,b,c,d,f,e,求满足abcdfe=fdcba条件的五位数abcdf(a0,e0,e1)的个数。 答案:2 clean=0for a=1 to 9for b=0 to 9for c=0 to 9for d=0 to 9for e=2 to 9for f=0 to 9if (10000*a+1000*b+100*c+10*d+f)*e=10000*f+1000*d+100*c+10*b+an=n+1endifend

31、forendforendforendforendforendfor?n54设有6个十进制数字a,b,c,d,f,e,求满足abcdfe=fdcba条件的五位数abcdf中(a0,e0,e1)最大的一个。 答21978 cleamax=0for a=1 to 9for b=0 to 9for c=0 to 9for d=0 to 9for e=2 to 9for f=0 to 9if (10000*a+1000*b+100*c+10*d+f)*e=10000*f+1000*d+100*c+10*b+as=10000*a+1000*b+100*c+10*d+fif maxsmax=sendifen

32、difendforendforendforendforendforendfor?max55设有十进制数字a,b,c,d和e,它们满足下列式子:abcd*e=bcde(a不等于0,e不等于0或1),求满足上述条件的最大四位数abcd的值。 答案:1999 cleamax=0for a=1 to 9for b=0 to 9for c=0 to 9for d=0 to 9for e=3 to 9if (1000*a+100*b+10*b+d)*e=b*1000+100*c+10*d+es=1000*a+100*b+10*b+dif max2)称为e数列,每一个e(n),(n=1,2,)称为e数。求1

33、,30000之内最大的e数。 答案:16687 cleae1=1e2=1n=3e3=(n-1)*e2+(n-2)*e1do while e32)称为e数列,每一个e(n),(n=1,2,)称为e数。求1,30000之内e数的个数。 答案:8 cleae1=1e2=1n=3e3=(n-1)*e2+(n-2)*e1do while e3=30000 e1=e2 e2=e3 n=n+1 e3=(n-1)*e2+(n-2)*e1 enddo ?n-161所谓“同构数”是指这样一个数,它出现在它的平方数的右侧,例如5的平方是25,25的平方是625,故5和25都是同构数,求1,1000之间有多少个同构数

34、。 答案:6 cleas=0for i=1 to 1000if i=10 s=s+1 endif else if i100 if i=mod(i2,100) s=s+1 endif else if i1000 if i=mod(i2,1000) s=s+1 endif else if i=mod(i2,10000) s=s+1 endif endif endif endif endfor ?s 62所谓“同构数”是指这样一个数,它出现在它的平方数的右侧,例如5的平方是25,25的平方是625,故5和25都是同构数,求1,1000之间所有同构数之和。 答案:1113 cleas=0for i=1

35、 to 1000if i=10 s=s+i endif else if i100 if i=mod(i2,100) s=s+i endif else if i1000 if i=mod(i2,1000) s=s+i endif else if i=mod(i2,10000) s=s+i endif endif endif endif endfor ?s63所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身,例如:153=13+33+53,故153是水仙花数,求100,999之间水仙花数的个数。 答案:4 cleas=0for i=100 to 999a=int(i/100)b=mod

36、(int(i/10),10)c=i%10if a3+b3+c3=is=s+1endifendfor?s64所谓“水仙花数”是指一个三位数,其各位数字三方和等于该数本身,例如:153=13+33+53,故153是水仙花数,求100,999之间所有水仙花数之和。 答案:1301 cleas=0for i=100 to 999a=int(i/100)b=mod(int(i/10),10)c=i%10if a3+b3+c3=is=s+iendifendfor?s65水仙花数是一个三位正整数,它等于它的各位数字的立方之和,例如:153=13+53+33,所以153是水仙花数。求400以内的最大水仙花数与

37、最小水仙花数之积。 答案:56763 cleak=0for i=100 to 400a=int(i/100)b=mod(int(i/10),10)c=i%10if a3+b3+c3=is=ik=k+1if k=1r=sendifendifendfor?s*r66水仙花数是一个三位正整数,它等于它的各位数字的立方之和,例如:153=13+53+33,所以153是水仙花数。试求所有的水仙花数之积。 答案: cleas=1for i=100 to 999a=int(i/100)b=mod(int(i/10),10)c=i%10if a3+b3+c3=is=s*iendifendfor?s67水仙花数

38、是一个三位正整数,它等于它的各位数字的立方之和,例如:153=13+53+33,所以153是水仙花数。试求有多少个水仙花数? 答案:4 clean=0for i=100 to 999a=int(i/100)b=mod(int(i/10),10)c=i%10if a3+b3+c3=in=n+1endifendfor?n68已知24有8个正整数因子(即:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。求1,100之间第10个能被其因子数目整除的正整数。 答案:56 cleak=0for a=1 to 100n=0for i=1 to aif a%i=0n=n+1endifend

39、forif a%n=0k=k+1endifif k=10exitendifendfor?a69已知24有8个因子(即:1,2,3,4,6,8,12,24),而24正好被8整除。求1,100之间第二大能被其因子数目整除的数。 答案:88cleak=0for a=100 to 1 step -1 n=0for i=1 to aif a%i=0n=n+1endifendforif a%n=0k=k+1endifif k=2exitendifendfor?a70已知24有8个正整数因子(即:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。问100,300之间有多少个能被其因子数目整除的数。 答案:19 cleas=0for a=100 to 300 n=0for i=1 to aif a%i=0n=n+1endifendforif a%n=0s=s+1endifendfor?s71已知24有8个正整数因子(即:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。求100,300之间能被其因子数目整除的数中最大的数。 答案:29

温馨提示

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

最新文档

评论

0/150

提交评论