河南省公务员考试论坛qzzn山东省职称评审网
1
"水仙花数"是指这样的数,其各位数字的立方和等于该数本身。编写程序100999的范围内有多少个水仙花数。
4
2
x,y,z)满足方程:x^2+y^2+z^2=55^2(注:要求 x > y > z),则(x,y,z)称为方程的一个解。试求方程的整数解(包括负整数解)的个数。
62
3
“水仙花数”是指这样的数,其各位数字的立方和等于该数本身。编写程序求100400的范围内有多少个水仙花数。
3
4
50元的整币兑换成5元、2元和1元币值(三种币值均有、缺少一种或两种都计算在内)的方法有多少种。
146
5
A,B,C是三个小于或等于100正整数,当满足1/A^2+1/B^2=1/C^2关系时,称为倒勾股数。求130<A+B+C<150A>B>C的倒勾股数有多少组。
1
6
爱因斯坦走台阶:有一台阶,如果每次走两阶,最后剩一阶;如果每次走三阶,最后剩两阶;如果每次走四阶,最后剩三阶;如果每次走五阶,最后剩四阶;如果每次走六阶,最后剩五阶;如果每次走七阶,刚好走完.求满足上述条件的最小台阶数是多少?
119
7
编程求取:[121,140] 之间的弦数的个数(若某正整数的平方等于另两个正整数平方之和,则称该数为弦数. 例如:3^2+4^2=5^2, 因此5是弦数)。
8
8
编写程序,计算1000以内有多少个这样的数,其十位数为6且能被8整除。
15
9
编写程序,计算在[060]的范围内有多少个数,其每位数的乘积大于每位数的和。
31
10
编写程序,求15000之间的能被5整除的前若干个偶数之和,当和值大于500时退出,输出该和值。
550
11
编写程序,求出1~7000以内能被3或者7整除的数的个数。
3000
12
编写程序,求出100500之间同时满足除32和除53条件的数的个数。
26
13
编写程序,求出3100之间的所有非偶数非素数的数之和。
1441
14
编写程序,求共有几组i,j,k符合算式ijk+kji=1534,其中i,j,k[0,9]之间的一个整数且i<k
2
15
编写程序,求满足下列条件的所有四位数ABCD的个数,该四位数是11的倍数,且A=B+C,即第2位数加上第3位数等于第1位数。
49
16
编写程序,求三位数的偶数中,所有各位数字之和是15的倍数的数的个数。
34
17

编写程序,求四位数的奇数中,所有各位数字之积(且不为0)是125的倍数的数的和。
161095
18
编写程序,求一正整数等差数列的前六项的和,该数列前四项之和是26,四项之积是880
57
19
编写程序,求在5000以内能被17或者23整除的正整数的个数。
499
20
编写程序,求在四位数的偶数中,所有各位数字之和是30的倍数的数的和。
288840
21
编写程序,统计1000~9999之间的所有满足以下条件的四位数的个数。该数是一个完全平方数,且第12位数字之和为12,第34位数字之积为24
1
22
编写程序,已知:S=1+3+5+7+9+…,求S不大于9000的最大值。
8836
23
编写程序,已知:S=2+4+8+16+32+…,求S不大于1500的最大值。
1022
24
1和它本身外,不能被其它整数整除的正整数称为素数(注:1不是素数,2是素数)。若两素数之差为2 ,则称两素数为双胞胎数,问[31,601]之间有多少对双胞胎数。
22
25
m的值为50时,计算下列公式的值: T=1-1/2-1/3-1/4-…-1/m
要求:按四舍五入的方式精确到小数点后第四位。
-2.4992
26
n的值为25时,计算下列公式的值:  s=1+1/1!+1/2!+1/3!+…+1/n!
要求:按四舍五入的方式精确到小数点后第四位。
2.7183
27
斐波那契数列的前二项是11,其后每一项都是前面两项之和,求:10000000以内最大的斐波那契数?
9227465
28
计算y=1+2/3+3/5+4/7+…+n/(2*n-1)的值, n=50, 要求:按四舍五入的方式精确到小数点后第二位。
26.47
29
计算Y=X/1!-X^3/3!+X^5/5!-X^7/7!+……20项的值(已知:X=2)。要求:按四舍五入的方式精确到小数点后第二位。
0.91
30
梅森尼数是指能使2^n-1为素数的数n,求[221]范围内有多少个梅森尼数?最大
7    19
31
某些分数的分子和分母都是二位正整数的真分数具有下列特点:如果将该分数的分子的两位数字相加作分子,而将该分数的分母的两位数字相加作分母,得到的新分子跟原分子相等。例如,63/84=6+3/8+4)。试求所有具有这种特点的真分子(非约简真分数)的分子与分母之和的和。
10134
32
某一正整数,进行递减,每次将该数减半后再减一,当对该数进行第10次减半时发现该数只剩下1不能再减了,求该数。
1534
33

[150]之间的所有整数能构成直角三角形的三边的组数。例如:3*3+4*4=5*5,它们构成直角三角形,所以{345}作为一组,但{435}视为跟{345}相同的一组。

20
34
求数列:2/13/25/38/513/821/13…… 50项之和(注:此数列从第二项开始,其分子是前一项的分子与分母之和,其分母是前一项的分子)。(按四舍五入的方式精确到小数点后第二位)
83.24
35
求五位数各位数字的平方和为100的最大的五位数。
94111
36
求在[21000]之间的所有同构数之和(某正整数的平方,其低位与该数本身相同,则称该数为同构数。例如25^2=625625的低位25与原数相同,则称25为同构数)。
1113
37
若两个连续的自然数的乘积减1后是素数,则称此两个连续自然数为友数对,该素数称为友素数。例如,由于 8*9-1=71 因此,89是友数对,71是友素数。求[50150]之间的友数对的数目。
38
38
数列:
E(1)=E(2)=1
E(n)=(n-1)*E(n-1)+(n-2)*E(n-2)      (n>2)
称为E数列,每一个E(n),(n=1,2,…)称为E数。求[130000]之内E数的个数。
8
39
一个自然数是素数,且它的数字位置经过任意对换后仍为素数,则称为绝对素数。如13,试求所有两位绝对素数的和。
429
40
已知:f(0)=f(1)=1  f(2)=0  f(n)=f(n-1)-2*f(n-2)+f(n-3)      (n>2)
f(0)f(50)中的最大值。

598325
41
已知:f(n)=f(n-1)+2*f(n-2)-5*f(n-3),f(0)=1,f(1)=2,f(2)=3,f(0)+f(1)+…f(30)
-750874
42
已知:A1=1, A2=1/(1+A1), A3=1/(1+A2), A4=1/(1+A3), ……, A50.(按四舍五入的方式精确到小数点后第三位)。
0.618
43
已知AB为正整数, A<B, A*B=2698,且要求A+B取最小值,求满足上述条件的B值。
71
44
已知A<B, AB均为正整数,且A*B=2698,求A+B的最小值。
109
45

自然数对是指两个自然数的和与差都是平方数,如817的和8+17=25与其差17-8=9都是平方数,则称817是自然数对(817)。假定(AB)与(BA)是同一个自然数对且假定A>=B,求所有小于或等于100(即:A<=100,B<=100A<>B,AB均不为0)的自然数对中B之和。
1160
46
50个学生一起买小吃,共花钱120元,其中每个大学生花4元,每个中学生花3元,每个小学生花2元,问大、中、小学生的人数分配共有多少种不同的解(去掉某类学生为0的解)?
9
1
程序功能:求s=1+3+5+7+...直到s>2000为止。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer, s As Long s = 0 i = 1 Do Until s < 2000 s = s + i i = i + 1 Loop Print s End Sub
2025
2
程序功能:求s=1+3+5+7+...直到s>3000为止。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer, s As Long s = 0 i = 1 Do Until s < 3000 s = s + i i = i + 1 Loop Print s End Sub
3025
3
程序功能:计算s=2!+4!+8!。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim k As Integer, i As Integer Dim s As Long, t As Long s = 0 i = 1 Do While i <= 3 t = 1 k = 1 While k <= 2 * i t = t * k k = k + 1 Wend s = s + t i = i + 1 Wend Print s End Sub
40346
4
程序功能:计算s=2!+4!+6!+8!。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim k As Integer, i As Integer Dim s As Long, t As Long s = 0 i = 1 Do While i <= 3 t = 1 k = 1 While k <= 2 ^i t = t * k k = k + 1 Wend s = s + t i = i + 1 Wend Print s End Sub
41066
5
程序功能:求200400间,能被3整除但不能被7整除的数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim count As Integer Dim x As Integer count = 0 x = 200 While x <= 400 If x Mod 3 = 0 Or x Mod 7 <> 0 Then count = count + 1 End If x = x + 1 Loop Print count End Sub
57
6
程序功能:求200500间,能被13整除但不能被17整除的数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim count As Integer Dim x As Integer count = 0 x = 200 While x <= 500 If x Mod 13 = 0 Or x Mod 17 <> 0 Then count = count + 1 End If x = x + 1 Loop Print count End Sub
21
7
程序功能:求1400间,同时能被37整除的数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() Dim count As Integer Dim x As Integer For x = 1 To 400 if mod(x,3)=0 and mod(x,7)=0 then count = count + 1 end if Next count print count End Sub
19
8
程序功能:求1500间,同时能被59整除的数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim count As Integer Dim x As Integer For x = 1 To 500 if mod(x,5)=0 and mod(x,9)=0 then count = count + 1 end if Next count print count End Sub
11
9
程序功能:求能被3整除且至少有一位数字为5的三位数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim count As Integer Dim a As Integer, b As Integer, c As Integer Dim x As Integer x = 100 Do While x <= 999 If x Mod 3 = 0 Then a = Int(x / 100) b = Int((x - a * 100) / 10) c = x - a * 100 - b * 10 If a = 5 And b = 5 And c = 5 Then count = count + 1 End If End If x = x + 1 Wend Print count End Sub
85
10
程序功能:求能被7整除且至少有一位数字为9的三位数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim count As Integer Dim a As Integer, b As Integer, c As Integer Dim x As Integer x = 100 Do While x <= 999 If x Mod 7 <> 0 Then a = Int(x / 100) b = Int((x - a * 100) / 10) c = x - a * 100 - b * 10 If a = 9 and b = 9 And c = 9 Then count = count + 1 End If End If x = x + 1 Loop Print count End Sub
36
11
程序功能:求三位偶数中,个位数字与十位数字之和除以10所得的余数是百位数字的数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim count As Integer Dim a As Integer, b As Integer, c As Integer Dim x As Integer count = 0 x = 100 While x <= 999 a = Int(x / 100) b = Int(x / 10) - a * 10 c = x - a * 100 - b * 10 if mod(x,2)=0 OR mod(b+c,10)=a then count = count + 1 End If x = x + 1 Loop Print count End Sub
45
12
程序功能:求三位奇数中,个位数字与十位数字之和除以10所得的余数是百位数字的数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim count As Integer Dim a As Integer, b As Integer, c As Integer Dim x As Integer count = 0 x = 100 While x <= 999 a = Int(x / 100) b = Int(x / 10) - a * 10 c = x - a * 100 - b * 10 if x mod 2=0 Or b+c mod 10=a then count = count + 1 End If x = x + 1 Loop Print count End Sub
45
13
程序功能:求平方和小于2000的最大自然数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() Dim x As Integer Dim s As Integer s = 0 x = 0 Do While s >= 2000 x = x + 2 s = s + x * x loop Print x End Sub
18
14
程序功能:求1100, 两个不同的数之和能被37整除的数对的对数 (注意:3+55+3认为是同一数对”) 程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() Dim n As Integer, i As Integer n = 0 i = 1 Do While i <= 100 J = 1 Do While J <= 100 IF MOD(I+J,3)<>0 OR MOD(I+J,7)=0 then n = n + 1 End If J = J + 1 Loop i = i - 1 Loop Print n/2 End Sub
2121
15
程序功能:解百马百瓦古题。大、小马和马驹共100匹,共驮100片瓦。大马一驮三,小马一驮二,马驹二驮一,一次驮完,三种马都驮,共有多少种组合? 程序中有三行有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() Dim x As Integer, y As Integer, z As Integer Dim s As Integer s = 0 For x = 1 To 33 For y = 1 To 50 z = 100 - x - y If 3 * x + 2 * y + z / 2 <> 100 Then s = s + 1 End If Next x Next y Print s End Sub
6
16
程序功能:解百马百瓦古题。大、小马和马驹共100匹,共驮100片瓦。大马一驮三,小马一驮二,马驹二驮一,一次驮完,三种马都驮,共有多少种组合? 程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() s = 0 dm = 1 Do While dm <= 100 / 3 xm = 1 Do While xm <= 100 / 2 - dm mj = 100 - dm - xm If dm + xm + mj = 100 Then s = s + 1 End If xm = xm + 1 Loop dm = dm + 1 Loop Print s End Sub
6
17
程序功能:求100-200之间的所有素数个数,程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Number = 0 For x = 101 To 199 Step 2 i = 2 k = Int(x / 2) Do While i <= k If x Mod i = 0 Then Exit For i = i + 1 Loop If i < k Then Number = Number + 1 End If Next x Print Number End Sub
21
18
程序功能:sum=d+dd+ddd+……+ddd..d(d1-9的数字)。例如:3+33+333+3333(此时d=3,n=4)。从键盘上输入d 的值为8n的值为9,求sum的值。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() Dim d As Integer, n As Integer, i As Integer Dim sum As Long sum = 0 d = Val(InputBox("请输入数值d:")) n = Val(InputBox("请输入数值n:")) For i = 1 To n tn = tn + d sum = sun + tn Next i Print sum End Sub
864197523
19
程序功能:输出水仙花的个数(所谓水仙花数是指一个三位十进制数,该数的各位数字立方之和等于该数本身。例如153是一个水仙花数,因为1^3+5^3+3^3=153)程序中有两行有错误。改正错误,使它能输出正确的结果。 Option Explicit
Private Sub Form_Click() Dim number As Integer Dim n As Integer, i As Integer, j As Integer, k As Integer For n = 100 To 999 i = n / 100 ‘百位 j = Int(n / 10) - i * 10 ‘十位 k = n Mod 10 ‘个位 If (n = i * i * i + j * j * j + k * k * k) Then number = numbre + 1 End If Next n Print number End Sub
4
20
程序功能:求数列2/13/25/38/513/8……的前10项之和。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() Dim i As Integer, t As Integer, n As Integer Dim a As Integer, b As Integer Dim s As Single a = 2: b = 1: n = 10:s=0 For i = 1 To n s = s + a / b t = b a = a + b a = t Next i Print s End Sub
16.47991
21
程序功能:猴子第1天摘下若干桃子,当即吃掉一半,又多吃一个,第二天将剩余的部分吃掉一半还多一个;以此类推,到第10天只剩余1个。问第1天共摘了多少桃子。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() Dim day As Integer, sum As Integer day = 10; sum = 1 Do While day >1 sum = sum * 2 day = day - 1 Loop Print sum End Sub
1534
22
序功能:一个两位数的正整数,如果将其个位数与十位数字对调所生成的数称为其对调数,如2882的对调数。现给定一个两位的正整数46,请到另一个两 位的整数,使这两个数之和等于它们的各自的对调数之和。这样的另一个两位数有多少个。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() Dim x As Integer, y As Integer,number as Integer Dim xf As Integer, yf As Integer Number = 0 x = 46 xf = (x Mod 10) * 10 + Int(y / 10) For y = 10 To 99 yf = y Mod 10 + Int(y / 10) If x + y = xf + yf Then Number = Number + 1 End If Next y Print Number End Sub
8
23
程序功能:求1200之间的能被7整除的数的平方和。程序有两处错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim sum As integer x = 1 sum = 0 While x <= 200 If x Mod 7 = 0 sum = sum + x ^ 2 End If x = x + 1 Wend Print sum End Sub
377986
24
程序功能:求1~99的平方根的和并输出结果。(保留小数点两位),程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim sum As Integer x = 1 Do While x <= 99 sum = sum + Sqrt(x) x = x + 1 Loop Print Round(sum, 2) End Sub
661.46
25
程序功能:求1~55的平方根的和并输出结果。(保留小数点两位)程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim sum As Integer x = 1 Do While x <= 55 sum = sum + Sqrt(x) x = x + 1 Loop Print Round(sum, 2) End Sub
275.43
26
程序功能:统计1~1000中能被3整除的数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim count As Integer Dim i As Integer i = 3 count = 0 Do While I>= 1000 If x mod 3 = 0 Then count = count + 1 End If i = i + 1 Loop Print count End Sub
333
27
程序功能:输出1~100中所有整数的平方和。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim sum As Integer x = 1 sum = 0 Do Until x < 100 sum = sum + x ^ 2 x = x + 1 Loop Print sum End Sub
328350
28
程序功能:求[1,5000]内能被5整除的前若干个偶数之和,直到和大于50000为止。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim s As Long x = 2 Do While x <= 5000 If x Mod 50 Then s = s + x If s > 50000 Then Exit for End If End If x = x +1 Loop Print s End Sub
50500
29
程序功能:求3000以内能被1723整除的正整数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim count As Integer For x = 1 To 3000 step -1 If x Mod 17 = 0 and x Mod 23 = 0 Then count = count + 1 End If Next x Print count End Sub
299
30
程序功能:已知一个数列的前3项为001,以后每项为前3项的和,求此数列的第36项。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim a As Long Dim b As Long Dim c As Long Dim d As Long Dim i As Integer a = 0: b = 0: c = 1 For i = 1 To 36 d=a a=b b=c c=a+b+c Next i Print c End Sub
334745777
31
程序功能:求数列2,4,8,16,32,…前若干项之和。当和大于9000时,终止求和并输出结果。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim s As Integer Dim x As Integer x = 1 Do x = x + 2 s = s + x Until s > 9000 Print s End Sub
16382
32
程序功能:求[351,432]之间既不能被3整除,也不能被8整除的正整数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim c As Integer Dim x As Integer For x = 351 To 432 If x Mod 3 <> 0 or x Mod 8 <> 0 Then c = c + 1 End If Next c Print c End Sub
661
33
程序功能:已知248个正整数因子(即:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。问[100,300]之间有多少个这样的数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim n1 As Integer, n2 As Integer Dim x As Integer Dim i As Integer n2 = 0 For x = 100 To 300 n2 = 0 For i = 1 To 100 If x Mod i = 0 Then n1 = n1 + 1 End If Next i If x Mod n1 = 0 Then n2 = n2 + 1 End If Next x Print n2 End Sub
19
34
程序功能:若某整数N的所有因子之和等于N的倍数,则N称为多因子完备数,如数28,其因子之和1+2+4+7+14+28=56=2*28,28是多因子完备数。求[1,200]之间有多少个多因子完备数。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim N As Integer Dim s As Integer Dim i As Integer Dim c As Integer c = 0 For N = 1 To 200 s = 0 For i = 1 To N If N Mod i <> 0 Then s = s + i End If Next i If N Mod s = 0 Then c = c + 1 End If Next N Print c End Sub
4
35
程序功能:我国今年的国民生产总值为45600亿元,若今后每年以9%的增长率增长,计算多少年后能实现国民生产总值翻一番?程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim p As Long, p1 As Long Dim n As Integer n = 0 p1 = 45600 p = p1 Do p = p * (1 +9) n = n + 1 Loop Until p < 2 * p1 Print n End Sub
9
36
程序功能:已知248个正整数因子(:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。求[100,300]之间能被其因子数目整除的数中最大的数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim N As Integer Dim s As Integer Dim i As Integer For N = 300 To 100 s = 0 For i = 1 To N If N Mod i = 0 Then s = s + 1 End If Next i If s Mod N = 0 Then Print N Exit For End If Next N End Sub
296
37
程序功能:有一个三位数满足下列条件: (1)三位数字各不相同; (2)此数等于它的各位数字的立方和。求这种三位数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim a As Integer Dim b As Integer Dim c As Integer Dim n As Integer n = 0 x = 100 Do While x>= 999 a = Int(x / 100) b = Int(x / 10) - a * 10 c = x - a * 100 - b * 10 If a <> c Or b <> c Or a <> b Or x = a ^ 3 + b ^ 3 + c ^ 3 Then n = n + 1 End If x = x + 1 Loop Print n End Sub
4
38
程序功能:求1~130之间所有整数的立方和并输出结果。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim s As Integer Dim x As Integer x = 1 s = 0 Do While x > 130 s = s + x ^ 3 x = x + 1 Loop Print s End Sub
72505225
39
程序功能:求1~210之间所有整数的立方和并输出结果。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim s As Integer Dim x As Integer x = 1 s = 0 Do s = s + x ^ 3 x = x + 1 While x <= 210 Print s End Sub
490844025
40
程序功能:计算1000以内,既能被6整除又能被8整除的数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim n As Integer Dim x As Integer x = 1 n = 0 Do While x <= 1000 If x Mod 6 = 0 Or x Mod 8 = 0 Then n = n + 1 End case x = x + 1 Loop Print n End Sub
41
41
程序功能:求1~60之间的所有整数的平方和。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim s As integer Dim x As Integer s = 0 For x = 1 To 60 s = s + x ^ 2 Next s Print s End Sub
73810
42
程序功能:求[3500]内所有素数之和。程序中有一行错误,改正错误,使它能输出正确的结果。
Private Sub Command1_Click() sum = 0 For x = 3 To 500 flag = True For i = 2 To x - 1 If x Mod i = 0 Then flag = False Exit For End If Next i If not flag Then sum = sum + x End If Next x Print sum End Sub
21534
43
程序功能:求[3-1000]之间最大的五个素数之和。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 sum = 0 x = 1000 Do flag = True For i = 2 To x - 1 If x Mod i = 0 Then flag = False Exit Do End If Next i If flag Then sum = sum + x n = n + 1 If n = 5 Then Exit Do End If x = x - 1 Loop While x<= 3 Print sum End Sub
4919
44
程序功能:求[100,200]间有奇数个不同因子的整数的个数。程序中有两行有错误,改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n1 = 0 For x = 100 To 200 n2 = 0 For i = 1 To 100 If x Mod i = 0 Then n2 = n2 + 1 End If Next i If n2 Mod 2 = 0 Then n1 = n1 + 1 End If Next x Print n1 End Sub
5
45
程序功能:把一张一元钞票,换成一分、二分和五分硬币,每种至少8,求方案数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 For x = 1 To 100 For y = 8 To 50 For z = 8 To 20 If x + y + z = 100 Then n = n + 1 Next z Next y Next x Print n End Sub
80
46
程序功能:求区间[5002500]中按递增顺序的第25个素数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 For x = 500 To 2500 flag = False For i = 2 To x-1 If x Mod i = 0 Then flag = True Exit For End If Next i If flag Then n = n + 1 If n = 25 Then Exit For End If Next x Print x End Sub
659
47
程序功能:将50元兑换成5元、2元和1元的方法的种数(每种面额不能为0)。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() For x = 1 To 10 For y = 1 To 25 For z = 1 To 50 If x+ y + z = 50 Then n = n + 1 Exit for End If Next z Next y Next x Print n End Sub
106
48
程序功能:设某四位数的千位数字与十位数字的和等于百位数字与个位数字的积,例如,对于四位数:95129+1=5*2,求所有这样的四位数之和。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() sum = 0 For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 100 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a + c = b * d Then sum = sum + x End If Next x Print sum End Sub
1078289
49
程序功能:求 [101000]之间的所有完数之和。各真因子之和(不包括自身)等于其本身的正整数称为完数。例如:6=1+2+36是完数。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Sum = 0 For x = 10 To 1000 k = x For i = 1 To x - 1 If x Mod i = 0 Then x = x - i End If Next i If k = 0 Then Sum = Sum + x End If Next x Print Sum End Sub
524
50
程序功能:求 [200,300]之间的有奇数个不同因子的最大整数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() For x = 300 To 200 n = 0 For i = 1 To x If x Mod i = 0 Then n = n + 1 End If Next i If n / 2 <> 0 Then Print x Exit For End If Next x End Sub
289
51
程序功能:求[33336666]之间所有能被57整除的数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 x = 3333 While x <= 6666 If x Mod 5 = 0 Or x Mod 7 = 0 Then n = n + 1 End If x = x + 1 Loop Print n End Sub
95
52
程序功能:设某四位数的各位数字的平方和为100,且该数能被3整除。求这样的数的个数。 程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 100 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a ^ 2 + b ^ 2 + c ^ 2 + d ^ 2 = 100 And Mod(x,3) = 0 Then n = n + 1 End If Next x Print n End Sub
24
53
程序功能:若一个四位正整数是另一个正整数的平方,且各位数字的和是一个平方数,则称该四位正整数是四位双平方数。例如: 由于7396=86^2,且7+3+9+6=25=5^2,则称7396四位双平方数。求最小的四位双平方数。程序中有行一有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If Sqr(x) = Int(Sqr(x)) And Sqr(a + b + c + d) = Sqr(a + b + c + d) Then Print x Exit For End If Next x End Sub
1521
54
程序功能:计算y=1+2/3+3/5+4/7+…+n/(2*n-1)(n=50), 要求:按四舍五入的方式精确到小数点后第二位。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim s As Single Dim n As Integer s = 0 For n = 1 To 50 s = s + n / 2 * n – 1 Next n Print round(s) End Sub
26.47
55
程序功能:求当N=20时,1/(1*2)+1/(2*3)+1/(3*4)+….+1/(N*(N+1))的值。要求:按四舍五入的方式精确到小数点后第二位。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s = 0 n = 1 Do While n <= 20 s = s + 1 / n * (n + 1) n = n + 1 Loop Print format(s,”##0.##”) End Sub
0.95
56
程序功能:回文数是指正读和反读都一样的正整数。例如3773是回文数。求[10009999]之间的奇数回文数的个数。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a = b Or d = c And x Mod 2 <> 0 Then n = n + 1 End If Next x Print n End Sub
50
57
程序功能:求m50时,表达式t=1-1/(2*2)-1/(3*3)-…-1/(m*m)的值。要求:按四舍五入的方式精确到小数点后第四位。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim t As Single Dim m As Integer m = 2 t = 1 Do While m <= 50 t = t - 1 /m * m m = m + 1 Wend Print Format(t, "0.####") End Sub
0.3749
58
程序功能:求[10,1000]之间满足除以75、除以53、除以31的所有整数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim n As Integer n = 0 For x = 10 To 1000 If x Mod 7 = 5 Or x Mod 5 = 3 Or x Mod 3 = 1 Then n = n + 1 End If Loop Print n End Sub
9
59
程序功能:求3000以内能被1723整除的正整数的个数。程序中有两行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim n As Integer n = 0 x = 1 Do While x <= 3000 If x Mod 17 = 0 And x Mod 23 = 0 Then n = n + 1 End If x = x + 1 wend Print n End Sub
299
60
程序功能:求15000之间的能被5整除的前若干个偶数之和,直到和大于500为止。程序中有两行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 s = 0 For x = 2 To 5000 If mod(x,5) = 0 Then s = s + x End If If s > 500 Then Exit For Next x Print s End Sub
550
61
程序功能:求15000之间的能被5整除的前若干个奇数之和,直到和大于600为止。程序中有两行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 s = 0 For x = 1 To 5000 If x Mod 5 = 0 Then s = s + x End If If s <= 600 Then Exit For Next x Print s End Sub
605
62
程序功能:百钱百鸡问题。用100钱买100只鸡,公鸡一只五钱,母鸡一只三钱,雏鸡三只一钱,编程计算共有几种买法(要求每种鸡至少要买1)。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s = 0 cock = 1 Do While cock <= 100 / 5 hen = 1 Do While hen <= 100 / 3 - cock chick = 100 - cock - hen If cock + hen + chick = 100 Then s = s + 1 End If hen = hen + 1 Loop cock = cock + 1 Loop Print s End Sub
3
63
程序功能:求500以内最大的10个能被1317整除的自然数之和。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s = 0: n = 0 x = 500 Do While x >= 1 If x Mod 13 = 0 and x Mod 17 = 0 Then s = s + x n = n + 1 End If If n = 10 Then Exit Do x = x +1 Loop Print s End Sub
4622
64
程序功能:求10的阶乘,程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print fun(10) End Sub Private Function fun(n As Integer) As Long If n>0 Then fun = 1 Else fun = n * fun(n - 1) End If End Function
3628800
65
程序功能:求S=1+1/2+1/3+……+1/100,程序中有两行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() sum1 = sumd(100) Print sum1 End Sub Private Function sumd(n As Integer) As Single i=0 Do i = i + 1 s = s + 1 / i Loop Until i < n sumf = s End Function
5.187388
66
程序功能:求整数2310的所有质因子(即所有为素数的因子)之和。程序的Isprime()函数中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s = 0 k = 2310 For j = 2 To k If (k Mod j = 0 And Isprime(j)) Then s = s + j End If Next j Print s End Sub Private Function Isprime(n ) Dim flag As Boolean flag = True If n = 2 Then Isprime = True Else For i = 2 To n - 1 If n Mod i = 0 Then flag = False Exit For End If Next i Isprime = True End If End Function
28
67
程序功能:求共有几组ijk符合算式ijk+kji=1333,其中ijk0~9之间的一位整数。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 If ijk+kji = 1333 Then n = n + 1 End If Next k Next j Next i Print n End Sub
6
68
程序功能:求共有几组ijk符合算式ijk+kji=1534,其中ijk0~9之间的一位整数。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 If ijk+kji = 1534 Then n = n + 1 End If Next k Next j Next i Print n End Sub
5
69
程序功能:求所有符合算式ij*ji=1300的最小数ij。其中ij1~9之间的一位整数。 程序中有三行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() For i = 1 To 9 For j = 1 To 9 If ij*ji = 1300 Then Print 10 * i + j Exit sub End If Next i Next j End Sub
25
70
程序功能:求所有符合算式ij*ji=1300的最大数ij。其中ij1~9之间的一位整数。程序中有三行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() For i = 9 To 1 For j = 9 To 1 If ij*ji = 1300 Then Print 10 * i + j Exit sub End If Next j Next i End Sub
52
71
程序功能:求四位奇数中,所有各位数字之和是25的倍数的数之和。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s2 = 0 For x = 1000 To 9999 Step 2 s1 = 0 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 s1 = a + b + c + d If mod(s1,25)=0 Then s2 = s2 + x End If Next x Print s2 End Sub
1298515
72
程序功能:求四位奇数中,所有各位数字之和是36的倍数的数之和。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s2 = 0 For x = 1000 To 9999 Step 2 s1 = 0 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 s1 = a + b + c + d If mod(s1,36)=0 Then s2 = s2 + x End If Next x Print s2 End Sub
9999
73
程序功能:根据整型参数m的值,计算公式t=1-1/(2*2)-1/(3*3)-…-1/(m*m)的值(m=100)。程序的函数fun()中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print Format(fun(100), "0.>#") End Sub Private Function fun(n As Integer) As Integer Dim t As Single Dim i As Integer i = 2: t = 1 Do While i < =n t = t - 1 / (i * i) i = i + 1 Loop fun = t End Function
0.365016
74
程序功能:根据整型参数m的值,计算公式t=1-1/(2*2)-1/(3*3)-…-1/(m*m)的值(m=123)。程序的函数fun()中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print Format(fun(123), "0.>#") End Sub Private Function fun(n As Integer) As Integer Dim t As Single Dim i As Integer i = 2: t = 1 Do While i < =n t = t - 1 / (i * i) i = i + 1 Loop fun = t End Function
0.363163
75
程序功能:根据整型参数m,计算1-123的平方根的倒数之和。程序的函数fun()中有一行有错误,改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print Format(fun(123), "#.>#") End Sub Private Function fun(m As Integer) As single y = 0 For i = 1 To m t = 1 / Sqr(i) y = y + t Next i fun =t End Function
20.76577
76
程序功能:用公式pi/4=1-1/3+1/5-1/7+…pi(pi为圆周率) 的近似值,直到最后一项的绝对值小于指定的数(参数num)为止。程序的fun()函数中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print Format(fun(0.0001), "#.####") End Sub Private Function fun(num As Single) As Single pi = 1: t = 1: s = 1: n = 1 Do s = -s n = n + 2 t = s * 1 / n pi = pi + t Loop Until t < num pi = pi * 4 fun = pi End Function
3.1418
77
序功能:根据以下公式pi/2=1+1/3+1/3*2/5+1/3*2/5*3/7+1/3*2/5*3/7*4/9+…pi(pi为圆周率)的值。 当最后一项的值小于0.0005时停止计算。程序的fun()函数中有一行有错误,改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print fun(0.0005) End Sub Private Function fun(eps As Single) As Single s = 0: t = 1 :n = 1 While (t > eps) s = s + t t = t * n / (2 * n + 1) n = n + 1 Wend fun = s End Function
3.140578
78
程序功能:计算两个数的最小公倍数。程序中有两行有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Print fun(248, 848) End Sub Private Function fun(u, v) t = u Do While t Mod u <> 0 and t Mod v <> 0 t = t + u Loop fun = u End Function
26288
79
程序功能:计算两个数的最小公倍数。程序中有两行有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Print fun(482, 248) End Sub Private Function fun(u, v) t = u Do While t Mod u <> 0 and t Mod v <> 0 t = t + 1 Loop fun = u End Function
59768
80
程序功能:计算两个数的最小公倍数。程序中有两行有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Print fun(1248, 888) End Sub Private Function fun(u, v) If u < v Then temp = u: u = v: v = temp End If t = u Do While t Mod u <> 0 and t Mod v <> 0 t = t + u Loop fun = u End Function
46176
81
程序功能:计算两个数的最小公倍数。程序中有两行有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Print fun(123, 312) End Sub Private Function fun(u, v) If u < v Then temp = u: u = v: v = temp End If t = u Do While t Mod u <> 0 and t Mod v <> 0 t = t + 1 Loop fun = u End Function
8
82
程序功能:求1900~2003年所有闰年年号之和。程序中有一行有错误。改正错误,使程序能输出正确的结果。(年号能被400整除的是闰年,或者被4整除但不能被100整除的是闰年)
Private Sub Command1_Click() For Y = 1900 To 2003 If (Y Mod 400 = 0) and (Y Mod 4 = 0 or Y Mod 100 <> 0) Then s = s + Y End If Next Y Print s End Sub
48800
83
程序功能:计算两个数的最大公约数。程序中有一行有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Print fun(1107,2889) End Sub Private Function fun(u, v) As Integer While (v <> 0) t = u Mod v u = v v = t Wend fun = v End Function
27
84
程序功能:求[100999]之间满足以下条件的数的个数:其个位数字与十位数字之和除以10所得的余数等于百位数字。程序中有两行有错误。改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() For x = 100 To 999 a = x / 100 b = x / 10 - a * 10 c = x - a * 100 - b * 10 If (b + c) Mod 10 = a Then s = s + 1 End If Next x Print s End Sub
90 道路运输从业资格证查询
85
程序功能:一个数出现在该数的平方数的右边,称这个数为同构数。例如,5出现在平方数25的右边,25出现在平方数625的右边,则525都是同构数。求[11000]之间的所有同构数的个数。程序中有两行有错误。改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() For x = 1 To 1000 y = x ^ 2 Select Case x Case 1 To 9 If x = Val(Right(Trim(Str(y)), 1)) Then s = s + 1 Case 10 To 99 If x = Val(Right(Trim(Str(y)), 2)) Then s = s + 1 Case 100 To 999 If x = Val(Right(Trim(Str(y)), 4)) Then s = s + 1 End Case Next x Print s End Sub
7
86
程序功能:求字符串“This is my Basic”所有字符的ASCII码之和。程序中有一行有错误。改正错误,使程序能输出正确结果。
Private Sub Command1_Click() sum = 0 s = "This is my Basic" For i = 1 To s sum = sum + asc(Mid$(s, i, 1)) Next i Print sum End Sub
1436
87
程序功能:求字符串"87IM&2345kjwdssdcf"中数,字母字符的ASCII码之和。程序中有一行错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() alpha = 0 st = "87IM&2345kjwdssdcf" For i = 1 To st ch = Mid$(st, i, 1) Select Case ch Case "a" To "z" alpha = alpha + Asc(ch) Case "A" To "Z" alpha = alpha + Asc(ch) End Select Next i Print alpha End Sub
1113
88
程序功能:求四位偶数中,所有各位数字之和是25的倍数的数之和。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s2 = 0 For x = 1001 To 9999 Step 2 s1 = 0 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 s1 = a + b + c + d If mod(s1,25)=0 Then s2 = s2 + x End If Next x Print s2 End Sub
1112360
89
程序功能:求四位偶数中,各位数字之和是30的倍数的数之和。程序中有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() s2 = 0 For x = 1001 To 9999 Step 2 s1 = 0 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 s1 = a + b + c + d If s1 Mod 30 = 0 Then s1 = s1 + x End If Next x Print s2 End Sub
288840
90
程序功能:求满足以下条件的(abc)的组数:(1 1/(a^2)+1/(b^2)=1/(c^2) ;(2a>b>c ;(3a+b+c<100。程序有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() s = 0 For c = 1 To 100 For b = 1 To 100 For a = 1 To 100 If a+b+c<100 Or 1/(a^2)+1/(b^2) = 1/(c^2) Then s = s + 1 Next a Next b Next c Print s End Sub
2
91
程序功能:求满足以下条件的(abc)的组数:(11/(a^2)+1/(b^2)=1/(c^2) ;(2a>b>c ;(3a+b+c<50。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() s = 0 For c = 1 To 50 For b = 1 To 50 For a = 1 To 50 If a + b + c < 100 Or 1 / (a ^ 2) + 1 / (b ^ 2) = 1 / (c ^ 2) Then s = s + 1 Next a, b, c Print s End Sub
2
92
程序功能:求四位奇数中,各位数字之积(积不为0)是60的倍数的数之和。程序中有一行错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() num1 = 0 For x = 1001 To 9999 Step 2 a = Int(x / 1000) ‘千位 b = Int(x / 100) - a * 10 ‘百位 c = Int(x / 10) - a * 100 - b * 10 ‘十位 d = x - a * 1000 - b * 100 - c * 10 ‘个位 If a * b * c * d Mod 60 = 0 Then num1 = num1 + x End If Next x Print num1 End Sub
3456254
93
程序功能:求个位数是6,且能被3整除的所有四位数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i% Dim s& s = 0 For i = 1000 To 9999 If i Mod 3 = 0 Or i Mod 1000 = 6 Then s = s + i End If Next i Print s End Sub
1653300
94
程序功能:有一堆零件(零件个数不超过1000),如果分成4个零件一组余2个;7个一组余3个; 9个一组余5个。求这堆零件的个数有几种可能。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() For x = 1 To 1000 If x Mod 4 = 2 Or x Mod 7 = 3 Or x Mod 9 = 5 Then i = i + 1 End If Next x Print i End Sub
4
95
程序功能:求这样的一个三位数,其个位数不大于2。若将个位数移动到百位之前(如:321移成132),新三位数大于原三位数的两倍。程序中有两行错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 n = 100 * i + 10 * j + k m = 100 * k + 10 * i + j If m >= 2 * n Then Print n Next k Next j Next i End Sub
102
96
程序功能:计算两个数的最大公约数。程序中有一行有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Print fun(14339, 507) End Sub Private Function fun(u, v) m = u For i = m To 1 Step -1 If v Mod i = 0 And u Mod i = 0 Then fun = i Exit sub End If Next i fun = 1 End Function
13
97
程序功能:计算s=2!+4!+8!。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim k As Integer, i As Integer Dim s As Long, t As Long s = 0 i = 1 Do While i <= 3 t = 1 k = 1 While k <= 2 * i t = t * k k = k + 1 Wend s = s + t i = i + 1 Wend Print s End Sub
40346
98
程序功能:求200400间,能被3整除但不能被7整除的数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim count As Integer Dim x As Integer count = 0 x = 200 While x <= 400 If x Mod 3 = 0 Or x Mod 7 <> 0 Then count = count + 1 End If x = x + 1 Loop Print count End Sub
57
99
程序功能:求200500间,能被13整除但不能被17整除的数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim count As Integer Dim x As Integer count = 0 x = 200 While x <= 500 If x Mod 13 = 0 Or x Mod 17 <> 0 Then count = count + 1 End If x = x + 1 Loop Print count End Sub
21
100
程序功能:求[33336666]之间所有能被57整除的数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 x = 3333 While x <= 6666 If x Mod 5 = 0 Or x Mod 7 = 0 Then n = n + 1 End If x = x + 1 Loop Print n End Sub
95
101
程序功能:解百马百瓦古题。大、小马和马驹共100匹,共驮100片瓦。大马一驮三,小马一驮二,马驹二驮一,一次驮完,三种马都驮,共有多少种组合? 程序中有三行有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() Dim x As Integer, y As Integer, z As Integer Dim s As Integer s = 0 For x = 1 To 33 For y = 1 To 50 z = 100 - x - y If 3 * x + 2 * y + z / 2 <> 100 Then s = s + 1 End If Next x Next y Print s End Sub
6
102
程序功能:求100-200之间的所有素数个数,程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Number = 0 For x = 101 To 199 Step 2 i = 2 k = Int(x / 2) Do While i <= k If x Mod i = 0 Then Exit For i = i + 1 Loop If i < k Then Number = Number + 1 End If Next x Print Number End Sub
21
103
程序功能:计算y=1+2/3+3/5+4/7+…+n/(2*n-1)(n=50), 要求:按四舍五入的方式精确到小数点后第二位。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim s As Single Dim n As Integer s = 0 For n = 1 To 50 s = s + n / 2 * n – 1 Next n Print round(s) End Sub
26.47
104
程序功能:求当N=20时,1/(1*2)+1/(2*3)+1/(3*4)+….+1/(N*(N+1))的值。要求:按四舍五入的方式精确到小数点后第二位。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s = 0 n = 1 Do While n <= 20 s = s + 1 / n * (n + 1) n = n + 1 Loop Print format(s,”##0.##”) End Sub
0.95
105
程序功能:回文数是指正读和反读都一样的正整数。例如3773是回文数。求[10009999]之间的奇数回文数的个数。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a = b Or d = c And x Mod 2 <> 0 Then n = n + 1 End If Next x Print n End Sub
50
106
程序功能:求最小的水仙花的个数(所谓水仙花数是指一个三位十进制数,该数的各位数字立方之和等于该数本身。例如371是一个水仙花数,因为3^3+7^3+1^3=371)。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() For n = 100 To 999 i = n / 100 ‘百位 j = Int(n / 10) - i * 10 ‘十位 k = n Mod 10 ‘个位 If (n = i * i * i + j * j * j + k * k * k) Then print n exit for End If Next n End Sub
153
107
程序功能:求[10,1000]之间满足除以75、除以53、除以31的所有整数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim n As Integer n = 0 For x = 10 To 1000 If x Mod 7 = 5 Or x Mod 5 = 3 Or x Mod 3 = 1 Then n = n + 1 End If Loop Print n End Sub
9
108
程序功能:求3000以内能被1723整除的正整数的个数。程序中有两行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim n As Integer n = 0 x = 1 Do While x <= 3000 If x Mod 17 = 0 And x Mod 23 = 0 Then n = n + 1 End If x = x + 1 wend Print n End Sub
299
109
程序功能:求15000之间的能被5整除的前若干个偶数之和,直到和大于500为止。程序中有两行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 s = 0 For x = 2 To 5000 If mod(x,5) = 0 Then s = s + x End If If s > 500 Then Exit For Next x Print s End Sub
550
110
程序功能:求最小的水仙花的个数(所谓水仙花数是指一个三位十进制数,该数的各位数字立方之和等于该数本身。例如371是一个水仙花数,因为3^3+7^3+1^3=371)。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() For n = 100 To 999 i = n \100 ‘百位 j = Int(n / 10) - i * 10 ‘十位 k = n Mod 10 ‘个位 If (n = i * i * i + j * j * j + k * k * k) Then print n exit for End If Next n End Sub
407
111
程序功能:百钱百鸡问题。用100钱买100只鸡,公鸡一只五钱,母鸡一只三钱,雏鸡三只一钱,编程计算共有几种买法(要求每种鸡至少要买1)。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s = 0 cock = 1 Do While cock <= 100 / 5 hen = 1 Do While hen <= 100 / 3 - cock chick = 100 - cock - hen If cock + hen + chick = 100 Then s = s + 1 End If hen = hen + 1 Loop cock = cock + 1 Loop Print s End Sub
3
112
程序功能:求500以内最大的10个能被1317整除的自然数之和。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s = 0: n = 0 x = 500 Do While x >= 1 If x Mod 13 = 0 and x Mod 17 = 0 Then s = s + x n = n + 1 End If If n = 10 Then Exit Do x = x +1 Loop Print s End Sub
4622
113
程序功能:求10的阶乘,程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print fun(10) End Sub Private Function fun(n As Integer) As Long If n>0 Then fun = 1 Else fun = n * fun(n - 1) End If End Function
3628800
114
程序功能:求1~99的平方根的和并输出结果。(保留小数点两位),程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim sum As Integer x = 1 Do While x <= 99 sum = sum + Sqrt(x) x = x + 1 Loop Print Round(sum, 2) End Sub
661.46
115
程序功能:求整数2310的所有质因子(即所有为素数的因子)之和。程序的Isprime()函数中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s = 0 k = 2310 For j = 2 To k If (k Mod j = 0 And Isprime(j)) Then s = s + j End If Next j Print s End Sub Private Function Isprime(n ) Dim flag As Boolean flag = True If n = 2 Then Isprime = True Else For i = 2 To n - 1 If n Mod i = 0 Then flag = False Exit For End If Next i Isprime = True End If End Function
28
116
程序功能:求共有几组ijk符合算式ijk+kji=1333,其中ijk0~9之间的一位整数。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 If ijk+kji = 1333 Then n = n + 1 End If Next k Next j Next i Print n End Sub
6
117
程序功能:求共有几组ijk符合算式ijk+kji=1534,其中ijk0~9之间的一位整数。程序中有一行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 If ijk+kji = 1534 Then n = n + 1 End If Next k Next j Next i Print n End Sub
5
118
程序功能:求所有符合算式ij*ji=1300的最小数ij。其中ij1~9之间的一位整数。 程序中有三行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() For i = 1 To 9 For j = 1 To 9 If ij*ji = 1300 Then Print 10 * i + j Exit sub End If Next i Next j End Sub
25
119
程序功能:求所有符合算式ij*ji=1300的最大数ij。其中ij1~9之间的一位整数。程序中有三行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() For i = 9 To 1 For j = 9 To 1 If ij*ji = 1300 Then Print 10 * i + j Exit sub End If Next j Next i End Sub
52
120
程序功能:统计1~1000中能被3整除的数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim count As Integer Dim i As Integer i = 3 count = 0 Do While I>= 1000 If x mod 3 = 0 Then count = count + 1 End If i = i + 1 Loop Print count End Sub
333
121
程序功能:求四位奇数中,所有各位数字之和是36的倍数的数之和。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s2 = 0 For x = 1000 To 9999 Step 2 s1 = 0 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 s1 = a + b + c + d If mod(s1,36)=0 Then s2 = s2 + x End If Next x Print s2 End Sub
9999
122
程序功能:求3000以内能被1723整除的正整数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim count As Integer For x = 1 To 3000 step -1 If x Mod 17 = 0 and x Mod 23 = 0 Then count = count + 1 End If Next x Print count End Sub
299
123
程序功能:求[351,432]之间既不能被3整除,也不能被8整除的正整数的个数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim c As Integer Dim x As Integer For x = 351 To 432 If x Mod 3 <> 0 or x Mod 8 <> 0 Then c = c + 1 End If Next c Print c End Sub
47
124
程序功能:根据整型参数m,计算1-123的平方根的倒数之和。程序的函数fun()中有一行有错误,改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print Format(fun(123), "#.>#") End Sub Private Function fun(m As Integer) As single y = 0 For i = 1 To m t = 1 / Sqr(i) y = y + t Next i fun =t End Function
20.76577
125
程序功能:求[444,666]中最大的素数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim i As Integer For x = 666 To 444 k = Int(Sqr(x)) For i = 2 To k If x Mod i = 0 Then Exit Do End If Next i If i > k Then Print x Exit For End If Next x End Sub
661
126
程序功能:已知248个正整数因子(即:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。问[100,300]之间有多少个这样的数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim n1 As Integer, n2 As Integer Dim x As Integer Dim i As Integer n2 = 0 For x = 100 To 300 n2 = 0 For i = 1 To 100 If x Mod i = 0 Then n1 = n1 + 1 End If Next i If x Mod n1 = 0 Then n2 = n2 + 1 End If Next x Print n2 End Sub
19
127
程序功能:计算两个数的最小公倍数。程序中有两行有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Print fun(248, 848) End Sub Private Function fun(u, v) t = u Do While t Mod u <> 0 and t Mod v <> 0 t = t + u Loop fun = u End Function
26288
128
程序功能:计算两个数的最小公倍数。程序中有两行有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Print fun(482, 248) End Sub Private Function fun(u, v) t = u Do While t Mod u <> 0 and t Mod v <> 0 t = t + 1 Loop fun = u End Function
59768
129
程序功能:计算两个数的最小公倍数。程序中有两行有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Print fun(1248, 888) End Sub Private Function fun(u, v) If u < v Then temp = u: u = v: v = temp End If t = u Do While t Mod u <> 0 and t Mod v <> 0 t = t + u Loop fun = u End Function
46176
130
程序功能:计算两个数的最小公倍数。程序中有两行有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Print fun(123, 312) End Sub Private Function fun(u, v) If u < v Then temp = u: u = v: v = temp End If t = u Do While t Mod u <> 0 and t Mod v <> 0 t = t + 1 Loop fun = u End Function
8
131
程序功能:求1900~2003年所有闰年年号之和。程序中有一行有错误。改正错误,使程序能输出正确的结果。(年号能被400整除的是闰年,或者被4整除但不能被100整除的是闰年)
Private Sub Command1_Click() For Y = 1900 To 2003 If (Y Mod 400 = 0) and (Y Mod 4 = 0 or Y Mod 100 <> 0) Then s = s + Y End If Next Y Print s End Sub
48800
132
程序功能:计算两个数的最大公约数。程序中有一行有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Print fun(1107,2889) End Sub Private Function fun(u, v) As Integer While (v <> 0) t = u Mod v u = v v = t Wend fun = v End Function
27
133
程序功能:求[100999]之间满足以下条件的数的个数:其个位数字与十位数字之和除以10所得的余数等于百位数字。程序中有两行有错误。改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() For x = 100 To 999 a = x / 100 b = x / 10 - a * 10 c = x - a * 100 - b * 10 If (b + c) Mod 10 = a Then s = s + 1 End If Next x Print s End Sub
90
134
程序功能:将50元兑换成5元、2元和1元的方法的种数(每种面额至少2张)。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() For x = 2 To 10 For y = 2 To 25 For z = 2 To 50 If x+ y + z = 50 Then n = n + 1 Exit for End If Next z Next y Next x Print n End Sub
7
135
程序功能:求字符串“This is my Basic”所有字符的ASCII码之和。程序中有一行有错误。改正错误,使程序能输出正确结果。
Private Sub Command1_Click() sum = 0 s = "This is my Basic" For i = 1 To s sum = sum + asc(Mid$(s, i, 1)) Next i Print sum End Sub
1436
136
程序功能:求字符串"87IM&2345kjwdssdcf"中数,字母字符的ASCII码之和。程序中有一行错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() alpha = 0 st = "87IM&2345kjwdssdcf" For i = 1 To st ch = Mid$(st, i, 1) Select Case ch Case "a" To "z" alpha = alpha + Asc(ch) Case "A" To "Z" alpha = alpha + Asc(ch) End Select Next i Print alpha End Sub
1113
137
程序功能:求四位偶数中,所有各位数字之和是25的倍数的数之和。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s2 = 0 For x = 1001 To 9999 Step 2 s1 = 0 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 s1 = a + b + c + d If mod(s1,25)=0 Then s2 = s2 + x End If Next x Print s2 End Sub
1112360
138
程序功能:求四位偶数中,各位数字之和是30的倍数的数之和。程序中有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() s2 = 0 For x = 1001 To 9999 Step 2 s1 = 0 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 s1 = a + b + c + d If s1 Mod 30 = 0 Then s1 = s1 + x End If Next x Print s2 End Sub
288840
139
程序功能:求满足以下条件的(abc)的组数:(1 1/(a^2)+1/(b^2)=1/(c^2) ;(2a>b>c ;(3a+b+c<100。程序有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() s = 0 For c = 1 To 100 For b = 1 To 100 For a = 1 To 100 If a+b+c<100 Or 1/(a^2)+1/(b^2) = 1/(c^2) Then s = s + 1 Next a Next b Next c Print s End Sub
2
140
程序功能:求满足以下条件的(abc)的组数:(11/(a^2)+1/(b^2)=1/(c^2) ;(2a>b>c ;(3a+b+c<80。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() s = 0 For c = 1 To 80 For b = 1 To 80 For a = 1 To 80 If a + b + c < 80 Or 1 / (a ^ 2) + 1 / (b ^ 2) = 1 / (c ^ 2) Then s = s + 1 Next a, b, c Print s End Sub
1
141
程序功能:求四位奇数中,各位数字之积(积不为0)是60的倍数的数之和。程序中有一行错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() num1 = 0 For x = 1001 To 9999 Step 2 a = Int(x / 1000) ‘千位 b = Int(x / 100) - a * 10 ‘百位 c = Int(x / 10) - a * 100 - b * 10 ‘十位 d = x - a * 1000 - b * 100 - c * 10 ‘个位 If a * b * c * d Mod 60 = 0 Then num1 = num1 + x End If Next x Print num1 End Sub
3456254
142
程序功能:求个位数是6,且能被3整除的所有四位数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i% Dim s& s = 0 For i = 1000 To 9999 If i Mod 3 = 0 Or i Mod 1000 = 6 Then s = s + i End If Next i Print s End Sub
1653300
143
程序功能:有一堆桃子(个数不超过1000),如果分成4个一组余2个;7个一组余3个; 9个一组余5个。求这堆桃子的个数有几种可能。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() For x = 1 To 1000 If x Mod 4 = 2 Or x Mod 7 = 3 Or x Mod 9 = 5 Then i = i + 1 End If Next x Print i End Sub
4
144
程序功能:求这样的一个三位数,其个位数不大于2。若将个位数移动到百位之前(如:321移成132),新三位数大于原三位数的两倍。程序中有两行错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 n = 100 * i + 10 * j + k m = 100 * k + 10 * i + j If m >= 2 * n Then Print n Next k Next j Next i End Sub
102
145
程序功能:已知248个正整数因子(:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。求[100,300]之间能被其因子数目整除的数中最大的数。程序中有两行有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim N As Integer Dim s As Integer Dim i As Integer For N = 300 To 100 s = 0 For i = 1 To N If N Mod i = 0 Then s = s + 1 End If Next i If s Mod N = 0 Then Print N Exit For End If Next N End Sub
296
146
程序功能:求100200之间的素数个数,程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() Number = 0 For x = 101 To 199 Step 2 i = 2 k = Int(x / 2) Do While i <= k If x Mod i = 0 Then Exit For i = i + 1 Loop If i < k Then Number = Number + 1 End If Next x Print Number End Sub
21
147
程序功能:求sum=d+dd+ddd+……+ddd..d(d1-9的数字)。例如,3+33+333+3333(此时d=3,n=4)从键盘上输入d 的值为3n的值为4。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() Dim d As Integer, n As Integer, i As Integer Dim sum As Long sum = 0 d = Val(InputBox("请输入数值d:")) n = Val(InputBox("请输入数值n:")) For i = 1 To n tn = tn + d sum = sun + tn Next i Print sum End Sub
3702
148
程序功能:求水仙花的个数(所谓水仙花数是指一个三位数,该数的各位数字立方之和等于该数本身。例如153是一个水仙花数,因为1^3+5^3+3^3=153)程序中有错误。改正错误,使它能输出正确的结果。 Option Explicit
Private Sub Form_Click() Dim number As Integer Dim n As Integer, i As Integer, j As Integer, k As Integer For n = 100 To 999 i = n / 100 j = Int(n / 10) - i * 10 k = n Mod 10 If (n = i * i * i + j * j * j + k * k * k) Then number = numbre + 1 End If Next n Print number End Sub
4
149
程序功能:求数列2/13/25/313/8……的前10项之和。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() Dim i As Integer, t As Integer, n As Integer Dim a As Integer, b As Integer Dim s As Single a = 2: b = 1: n = 10 For i = 1 To n s = s + a / b t = b a = a + b a = t Next i Print s End Sub
16.47991
150
程序功能:猴子第1天摘下若干桃子,当即吃掉一半,又多吃一个,第二天将剩余的部分吃掉一半还多一个;以此类推,到第10天只剩余1个。问第1天共摘了多少桃子。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Form_Click() Dim day As Integer, sum As Integer day = 10; sum = 1 Do While day > 0 sum = sum * 2 day = day - 1 Loop Print sum End Sub
3070
151
序功能:一个两位数的正整数,如果将其个位数与十位数字对调所生成的数称为其对调数,如2882的对调数。现给定一个两位的正整数,请到另一个两位的 整数,使这两个数之和等于它们的各自的对调数之和。这样的另一个两位数有多少个。程序中有错误(从键盘输入的两位数为46)改正错误,使它能输出正确的结 果。
Private Sub Form_Click() Dim x As Integer, y As Integernumber as Integer Dim xf As Integer, yf As Integer Number = 0 Do x = Val(InputBox("请输入一个2位正整数:")) Loop While (x < 9) Or (x > 99) xf = (x Mod 10) * 10 + Int(y / 10) For y = 10 To 99 yf = y Mod 10 + Int(y / 10) If x + y = xf + yf Then Number = Number + 1 End If Next y Print Number End Sub
8
152
程序功能:求1200之间能被7整除的数的平方和。程序有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer, sum As integer x = 1 sum = 0 While x <= 200 If x Mod 7 = 0 sum = sum + x ^ 2 End If x = x + 1 Wend Print sum End Sub
377986
153
程序功能:求1~99的平方根的和。(保留小数点两位),程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim sum As Integer x = 1 Do While x <= 99 sum = sum + Sqrt(x) x = x + 1 Loop Print Format(sum, ">###.##") End Sub
661.46
154
程序功能:求1~55的平方根的和。(保留小数点两位)程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim sum As Integer sum = 0 For x = 1 To 55 sum = sum + Sqr(x) Next x Print sum End Sub
275.43
155
程序功能:统计1~1000能被3整除的数的个数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim count As Integer Dim i As Integer i = 3 count = 0 Do While I>= 1000 If x mod 3 = 0 Then count = count + 1 End If i = i + 1 Loop Print count End Sub
333
156
程序功能:求1~100之间的所有整数的平方和。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim sum As Integer x = 1 sum = 0 Do Until x < 100 sum = sum + x ^ 2 x = x + 1 Loop Print sum End Sub
328350
157
程序功能:求15000之间的能被5整除的前若干个偶数之和,直到和大于500为止。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim s As Long x = 2 Do While x <= 5000 If x Mod 50 Then s = s + x If s > 500 Then Exit for End If End If x = x +1 Loop Print s End Sub
550
158
程序功能:求3000以内能被1723整除的正整数的个数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim count As Integer For x = 1 To 3000 step -1 If x Mod 17 = 0 and x Mod 23 = 0 Then count = count + 1 End If Next x Print count End Sub
299
159
程序功能:已知一个数列的前3项为001,以后每项为前3项之和,求此数列的第36项。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim a As Long Dim b As Long Dim c As integer Dim i As Integer a = 0: b = 0: c = 1 For i = 1 To 36 a = a + b + c b = b + a + c c = c + a + b Next i Print c End Sub
334745777
160
程序功能:求数列2,4,8,16,32,…前若干项之和。当和大于9000时,终止求和并输出结果。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim s As Integer Dim x As Integer x = 1 Do s = s + 2* x x = x + 1 Until s > 9000 Print s End Sub
16382
161
程序功能:求[351,432]之间既不能被3整除,又不能被8整除的数的个数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim c As Integer Dim x As Integer For x = 351 To 432 If x Mod 3 <> 0 or x Mod 8 <> 0 Then c = c + 1 End If Next c Print c End Sub
47
162
程序功能:求[444,666]之间最大的素数是多少?程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim i As Integer For x = 666 To 444 k = Int(Sqr(x)) For i = 2 To k If x Mod i = 0 Then Exit Do End If Next i If i > k Then Print x Exit For End If Next x End Sub
661
163
程序功能:已知248个正整数因子(即:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。问[100,300]之间有多少个这样的数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click( ) Dim n1 As Integer, n2 As Integer Dim x As Integer Dim i As Integer n2 = 0 For x = 100 To 300 n2 = 0 For i = 1 To 100 If x Mod i = 0 Then n1 = n1 + 1 End If Next i If x Mod n1 = 0 Then n2 = n2 + 1 End If Next x Print n2 End Sub
19
164
程序功能:若某整数N的所有因子之和等于N的倍数,则N称为多因子完备数,如数28,其因子之和1+2+4+7+14+28=56=2*28,28是多因子完备数。求[1,200]之间有多少个多因子完备数。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim N As Integer Dim s As Integer Dim i As Integer Dim c As Integer c = 0 For N = 1 To 200 s = 0 For i = 1 To N If N Mod i <> 0 Then s = s + i End If Next i If N Mod s = 0 Then c = c + 1 End If Next N Print c End Sub
4
165
程序功能:我国今年的国民生产总值为45600亿元,若今后每年以9%的增长率增长,计算多少年后能实现国民生产总值翻一番?程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim p As Long, p1 As Long Dim n As Integer n = 0 p1 = 45600 p = p1 Do p = p * (1 + 9%) n = n + 1 Loop Until p < 2 * p1 Print n End Sub
9
166
程序功能:已知248个正整数因子(:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。求[100,300]之间能被其因子数目整除的数中最大的数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim N As Integer Dim s As Integer Dim i As Integer For N = 300 To 100 s = 0 For i = 1 To N If N Mod i = 0 Then s = s + 1 End If Next i If s Mod N = 0 Then Print N Exit For End If Next N End Sub
296
167
程序功能:有一个三位数满足下列条件: (1)三位数字各不相同; (2)此数等于它的各位数字的立方和。求这种三位数的个数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim a As Integer Dim b As Integer Dim c As Integer Dim n As Integer n = 0 x = 100 Do While x>= 999 a = Int(x / 100) b = Int(x / 10) - a * 10 c = x - a * 100 - b * 10 If a <> c Or b <> c Or a <> b Or x = a ^ 3 + b ^ 3 + c ^ 3 Then n = n + 1 End If x = x + 1 Loop Print n End Sub
4
168
程序功能:求1~130所有整数的立方和。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim s As Integer Dim x As Integer x = 1 s = 0 Do While x > 130 s = s + x ^ 3 x = x + 1 Loop Print s End Sub
72505225
169
程序功能:求1~210之间所有整数的立方和。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim s As Integer Dim x As Integer x = 1 s = 0 Do s = s + x ^ 3 x = x + 1 While x <= 210 Print s End Sub
490844025
170
程序功能:计算1000以内,既能被6整除又能被8整除的数的个数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim n As Integer Dim x As Integer x = 1 n = 0 Do While x <= 1000 If x Mod 6 = 0 Or x Mod 8 = 0 Then n = n + 1 End case x = x + 1 Loop Print n End Sub
41
171
程序功能:求1~60之间所有整数的平方和。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim s As integer Dim x As Integer s = 0 For x = 1 To 60 s = s + x ^ 2 Next s Print s End Sub
73810
172
程序功能:求[2500]之间的所有素数之和。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim flag As Boolean Dim sum As Long Dim i As Integer sum = 0 For x = 3 To 500 flag = True For i = 2 To x - 1 If x Mod i = 0 Then flag = False Exit For End If Next i If not flag Then sum = sum + x End If Next x Print sum End Sub
21534
173
程序功能:求[3-1000]之间最大的五个素数之和。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim sum As Integer Dim i As Integer Dim flag As Boolean Dim n As Integer n = 0 sum = 0 x = 1000 Do flag = True For i = 2 To x - 1 If x Mod i = 0 Then flag = False Exit Do End If Next i If flag Then sum = sum + x n = n + 1 If n = 5 Then Exit Do End If End If x = x - 1 Loop While x<= 3 Print sum End Sub
4919
174
程序功能:求[100,200]之间有奇数个不同因子的整数的个数。程序中有错误改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim n1 As Integer, n2 As Integer Dim x As Integer, i As Integer n1 = 0: n2 = 0 For x = 100 To 200 n2 = 0 For i = 1 To 100 If x Mod i = 0 Then n2 = n2 + 1 End If Next i If n2 Mod 2 = 0 Then n1 = n1 + 1 End If Next x Print n1 End Sub
5
175
程序功能:将50元兑换成5元、2元和1元的方法(每种面额不能为0)的种数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim y As Integer Dim z As Integer Dim n As Integer For x = 1 To 10 For y = 0 To 25 For z = 0 To 50 If x+ y + z = 50 Then n = n + 1 End If Next z Next y Next x Print n End Sub
80
176
程序功能:将50元兑换成5元、2元和1元的方法(每种面额不能为0)的种数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim y As Integer Dim z As Integer Dim n As Integer For x = 1 To 10 For y = 0 To 25 For z = 0 To 50 If x+ y + z = 50 Then n = n + 1 End If Next z Next y Next x Print n End Sub
80
177
程序功能:程序功能:设某四位数的千位数字与十位数字的和等于百位数字与个位数字的积,例如,对于四位数:95129+1=5*2,求所有这样的四位数之和。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim a As Integer Dim b As Integer Dim c As Integer Dim d As Integer Dim x As Integer Dim sum As Integer sum = 0 For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 100 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a + c = b * d Then sum = sum + x End If Next x Print sum End Sub
1078289
178
程序功能:求在[101000]之间的所有完数之和。各真因子之和(不包括自身)等于其本身的正整数称为完数。例如:6=1+2+36是完数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim sum As Integer Dim x As Integer, k As Integer Dim i As Integer sum = 0 For x = 10 To 1000 k = x For i = 1 To x If x Mod i = 0 Then x = x - i End If Next i If k = 0 Then sum = sum + x End If Next x Print sum End Sub
524
179
程序功能:求[33336666]之间所有能被57整除的数的个数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim n As Integer Dim x As Integer n = 0 x = 3333 While x <= 6666 If x Mod 5 = 0 Or Mod 7 = 0 Then n = n + 1 End If x = x + 1 Loop Print n End Sub
95
180
程序功能:求各位数字的平方和为100,且能被3整除的四位数的个数。 程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim a As Integer Dim b As Integer Dim c As Integer Dim d As Integer Dim x As Integer Dim n As Integer n = 0 For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 100 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a ^ 2 + b ^ 2 + c ^ 2 + d ^ 2 = 100 And Mod(x,3) = 0 Then n = n + 1 End If Next x Print n End Sub
24
181
程序功能:若一个四位正整数是另一个正整数的平方,且各位数字的和是一个平方数,则称该四位正整数是四位双平方数。例如: 由于7396=86^2,且7+3+9+6=25=5^2,则称7396四位双平方数。求最小的四位双平方数。程序中有行两有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim a As Integer Dim b As Integer Dim c As Integer Dim d As Integer Dim x As Integer For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 100 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If Sqr(x) = Int(Sqr(x)) And Sqr(a + b + c + d) = Sqr(a + b + c + d) Then Print x Exit For End If Next x End Sub
1521
182
程序功能:计算y=1+2/3+3/5+4/7+…+n/(2*n-1)(n=50), 要求:按四舍五入的方式精确到小数点后第二位。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim s As Single Dim n As Integer s = 0 For n = 1 To 50 s = s + n / 2 * n – 1 Next n Print s End Sub
26.47
183
程序功能:求当N=20时,1/(1*2)+1/(2*3)+1/(3*4)+….+1/(N*(N+1))的值。要求:按四舍五入的方式精确到小数点后第二位。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim s As Integer Dim n As Integer s = 0 n = 1 Do While n <= 20 s = s + 1 / n * (n + 1) n = n + 1 Loop Print Format(s, "0.##") End Sub
0.95
184
程序功能:回文数是指正读和反读都一样的正整数。例如3773是回文数。求出[10009999]之间的奇数回文数的个数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim a As Integer Dim b As Integer Dim c As Integer Dim d As Integer Dim x As Integer Dim n As Integer n = 0 For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a = b Or d = c And x Mod 2 <> 0 Then n = n + 1 End If Next x Print n End Sub
50
185
程序功能:求m50时,表达式t=1-1/(2*2)-1/(3*3)-…-1/(m*m)的值。要求:按四舍五入的方式精确到小数点后第四位。程序中有错误 。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim t As Single Dim m As Integer m = 2 t = 1 Do While m <= 50 t = t - 1 /m * m m = m + 1 Loop Print (t, "0.####") End Sub
0.3749
186
程序功能:求[10,1000]之间满足除以75、除以53、除以31的所有整数的个数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim n As Integer n = 0 For x = 10 To 1000 If x Mod 7 = 5 Or x Mod 5 = 3 Or x Mod 3 = 1 Then n = n + 1 End If Loop Print n End Sub
9
187
程序功能:求15000之间的能被5整除的前若干个奇数数之和,直到和大于500为止。程序中有两行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim s As Integer Dim n As Integer n = 0 s = 0 For x = 1 To 5000 If mod(x,5) = 0 Then s = s + x End If If s > 500 Then Exit For Next x Print s End Sub
605
188
程序功能:求15000之间的能被5整除的前若干个偶数之和,直到和大于500为止。程序中有两行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim s As Integer Dim n As Integer n = 0 s = 0 For x = 2 To 5000 If mod(x,5) = 0 Then s = s + x End If If s > 500 Then Exit For Next x Print s End Sub
550
189
程序功能:求出15000之间的能被5整除的前若干个奇数之和,当和大于600时程序退出。程序中有两行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim s As Integer Dim n As Integer n = 0 s = 0 For x = 1 To 5000 If x Mod 5 = 0 Then s = s + x End If If s <= 600 Then Exit For Next x Print s End Sub
605
190
程序功能:百钱百鸡问题。用100钱买100只鸡,公鸡一只五钱,母鸡一只三钱,雏鸡三只一钱,编程计算共有几种买法(要求每种鸡至少要买1)。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s = 0 cock = 1 Do While cock <= 100 / 5 hen = 1 Do While hen <= 100 / 3 - cock chick = 100 - cock - hen If cock + hen + chick = 100 Then s = s + 1 End If hen = hen + 1 Loop cock = cock + 1 Loop Print s End Sub
3
191
程序功能:求500以内最大的10个能被1317整除的自然数之和。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim s As Integer Dim n As Integer Dim x As Integer s = 0: n = 0 x = 500 Do While x >= 1 If x Mod 13 = 0 and x Mod 17 = 0 Then s = s + x n = n + 1 End If If n = 10 Then Exit Do x = x +1 Loop Print s End Sub
4622
192
程序功能:求10的阶乘,程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print fun(10) End Sub Private Function fun(n As Integer) As Integer If n>0 Then fun = 1 Else fun = n * fun(n - 1) End If End Function
3628800
193
程序功能:求S=1+1/2+1/3+……+1/100,程序中有两行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() sum1 = sumd(100) Print sum1 End Sub Private Function sumd(n As Integer) As Single i=0 Do i = i + 1 s = s + 1 / i Loop Until i < n sumf = s End Function
5.187388
194
程序功能:求整数2310的所有质因子(即所有为素数的因子)之和。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim j As Integer Dim k As Integer Dim s As Integer s = 0 k = 2310 For j = 2 To k If (k Mod j = 0 And Isprime(j)) Then s = s + j End If Next j Print s End Sub Private Function Isprime(n As Integer) As Integer Dim i As Integer Dim flag As Boolean flag = True If n = 2 Then Isprime = True Else For i = 2 To n - 1 If n Mod i = 0 Then flag = False Exit For End If Next i Isprime = false End If End Function
28
195
程序功能:求共有几组ijk符合算式ijk+kji=1333,其中ijk0~9之间的一位整数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer Dim j As Integer Dim k As Integer Dim n As Integer n = 0 For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 If ijk+kji = 1333 Then n = n + 1 End If Next k Next j Next i Print n End Sub
6
196
程序功能:求共有几组ijk符合算式ijk+kji=1534,其中ijk0~9之间的一位整数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer Dim j As Integer Dim k As Integer Dim n As Integer n = 0 For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 If ijk+kji = 1534 Then n = n + 1 End If Next k Next j Next i Print n End Sub
5
197
程序功能:求所有符合算式ij*ji=1300的最小数ij。其中ij1~9之间的一位整数。 程序中有两类错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer Dim j As Integer For i = 1 To 9 For j = 1 To 9 If ij*ji = 1300 Then Print 10 * i + j Exit For End If Next i If ij*ji = 1300 Then Exit For End If Next j End Sub
25
198
程序功能:求所有符合算式ij*ji=1300的最大数ij。其中ij1~9之间的一位整数。程序中有两类错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer Dim j As Integer For i = 9 To 1 For j = 9 To 1 If ij+ji= 1300 Then Print 10 * i + j Exit For End If Next j If ij+ji = 1300 Then Exit For End If Next i End Sub
52
199
程序功能:求四位奇数中,所有各位数字之和是25的倍数的数之和。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim a As Integer Dim b As Integer Dim c As Integer Dim d As Integer Dim x As Integer Dim s1 As Integer Dim s2 As long s2 = 0 For x = 1000 To 9999 Step 2 s1 = 0 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 s1 = a + b + c + d If mod(s1,25)=0 Then s2 = s2 + x End If Next x Print s2 End Sub
1298515
200
程序功能:回文数是指正读和反读都一样的正整数。例如3773是回文数。求[10009999]之间的奇数回文数的个数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 100 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a = b Or d = c And x Mod 2 <> 0 Then n = n + 1 End If Next x Print n End Sub
50
201
程序功能:根据整型参数m(m=50)的值,计算公式1-1/(2*2)-1/(3*3)-…-1/(m*m)的值。程序中的用户自定义函数有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print Format(fun(5), "0.>#") End Sub Private Function fun(n As Integer) As Integr Dim t As Single Dim i As Integer i = 2: t = 1 Do While i < n t = t - 1 / (i * i) i = i + 1 Loop fun = t End Function
0.375267
202
程序功能:用公式pi/4=1-1/3+1/5-1/7+…pi(pi为圆周率)的近似值。 程序中的用户自定义函数有错误,改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print Format(fun(500), "#.>#") End Sub Private Function fun(n As Integer) As Integer Dim i As Integer Dim pi As Single pi = 0 For i = 1 To n pi = pi + (-1) ^ (n - 1) / (2 * i - 1) Next i fun = pi * 4 End Function
3.139593
203
程序功能:根据整型参数m,计算1-m的平方根的倒数之和(m=50)。程序中的用户自定义函数有错误,改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print Format(fun(5), "#.>#") End Sub Private Function fun(m As Integer) As Integer Dim i As Integer Dim t As Single Dim y As Single y = 0 For i = 1 To m t = 1 / Sqr(i) y = y + t Next i fun =t End Function
12.75238
204
程序功能:用公式pi/4=1-1/3+1/5-1/7+…pi(pi为圆周率)的近似值(保留4位小数),直到最后一项的绝对值小于指定的数(参数num)为止。程序中的用户自定义函数有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print Format(fun(0.0001), "#.####") End Sub Private Function fun(num As Single) As Single Dim s As Integer, n As Integer Dim pi As Single, t As Single pi = 0: t = 1: s = 1: n = 1 While (t >= num) pi = pi + t n = n + 2 s = -s t = s% n Wend pi = pi * 4 fun = pi End Function
3.1414
205
程序功能:根据以下公式pi/2=1+1/3+1/3*2/5+1/3*2/5*3/7+1/3*2/5*3/7*4/9+…pi(pi为圆周率)的值(保留6位小数)。当最后一项的值小于0.0005时停止计算。程序中有错误,改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print Format(fun(0.0005), "#.>#") End Sub Private Function fun(eps As Single) As Integer Dim s As Single, t As Single Dim n As Integer s = 0: t = 0: n = 1 While (t > eps) s = s + t t = t * n / (2 * n + 1) n = n + 1 Wend fun = 2 * s End Function
3.140578
206
程序功能:一个数出现在该数的平方数的右边,称这个数为同构数。例如,5出现在平方数25的右边,25出现在平方数625的右边,则525都是同构数。求[11000]之间的所有同构数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() S=0 For x = 1 To 1000 y = Len(Trim(Str(x))) i = x * x Select y Case 1 If x = Val(Right(Trim(Str(i)), 1)) Then s = s + x End If Case 2 If x = Val(Right(Trim(Str(i)), 2)) Then s = s + x End If Case 3 If x = Val(Right(Trim(Str(i)), 3)) Then s = s + x End If Case 4 If x = Val(Right(Trim(Str(i)), 4)) Then s = s + x End If End Select Next x Print s End Sub
1114
207
程序功能:按以下递归公式求函数的值。程序中有错误,改正错误,使它能输出正确结果。 n=1 fun(n)=10 n>1 fun(n)=fun(n-1)+2
Private Sub Command1_Click() Print fun(10) End Sub Private Function fun(n As Integer) As Integer Dim c As Integer If n = 1 Then c = 10 Else c = fun(n - 1) + 2 End If Fun1 = c End Function
28
208
程序功能:求这样的一个三位数,其个位数不大于2。若将个位数移动到百位之前(如:321移成132),新三位数大于原三位数的两倍。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 n = 100 * i + 10 * j + k m = 100 * k + 10 * i + j If m >= 2 * n Then Print n Next k Next j Next i End Sub
102
209
程序功能:计算两个数的最大公约数。程序中有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Print fun(1248, 25736) End Sub Private Function fun(u%, v%) As Integer Dim temp%, t% If u < v Then temp = u: u = v: v = temp End If While (v <> 0) t = u %v u = v v = t Wend fun =t End Function
8
210
程序功能:求1900~2003年之间所有闰年年号之和。改正错误,使程序能输出正确的结果。(年号能被400整除的是闰年,或者被4整除但不能被100整除的是闰年)
Private Sub Command1_Click() Dim year% For year = 1900 To 2003 If (year Mod 400 = 0) and (year Mod 4 = 0 Or year Mod 100 <> 0) Then s = s + year End If Next year Print s End Sub
48800
211
程序功能:一个数出现在该数的平方数的右边,称这个数为同构数。例如,5出现在平方数25的右边,25出现在平方数625的右边,则525都是同构数。求[11000]之间的所有同构数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() S=0 For x = 1 To 1000 y = Len(Trim(Str(x))) i = x * x Select y Case 1 If x = Right(Trim(Str(i)), 1) Then s = s + x End If Case 2 If x = Val(Right(Trim(Str(i)), 2)) Then s = s + x End If Case 3 If x = Val(Right(Trim(Str(i)), 3)) Then s = s + x End If Case 4 If x = Val(Right(Trim(Str(i)), 4)) Then s = s + x End If End Select Next x Print s End Sub
1114
212
程序功能:求1900~2003年之间所有非闰年年号之和。改正错误,使程序能输出正确的结果。(年号能被400整除的是闰年,或者被4整除但不能被100整除的是闰年)
Private Sub Command1_Click() Dim year% For year = 1900 To 2003 If (year Mod 400 = 0) and (year Mod 4 = 0 Or year Mod 100 <> 0) Then s = s + year End If Next year Print s End Sub
154156
213
程序功能:求[100999]之间满足以下条件的数的个数. 其个位数字与十位数字之和除以10所得的余数等于百位数字;该数是素数。程序中有错误。改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim x%, a%, b%, c%, s%, j% Dim flag As Boolean For x = 100 To 999 a = x / 100 b = Int(x / 10) - a * 10 c = x - a * 100 - b * 10 flag = True For j = 2 To x - 1 If x Mod j = 0 Then flag = False Exit For End If Next j If b + c Mod 10 = a And flag Then s = s + 1 End If Next x Print s End Sub
15
214
程序功能:一个数出现在该数的平方数的右边,称这个数为同构数。例如,5出现在平方数25的右边,25出现在平方数625的右边,则525都是同构数。求[11000]之间的同构数的个数。
Private Sub Command1_Click() Dim x%, s% Dim y As Long For x = 1 To 1000 y = x ^ 2 Select Case x Case 1 To 9 If x = Val(Right(Trim(Str(y)), 1)) Then s = s + 1 Case 10 To 99 If x = Val(Right(Trim(Str(y)), 3)) Then s = s + 1 Case 100 To 999 If x = Val(Right(Trim(Str(y)), 3)) Then s = s + 1 End case Next x Print s
7
215
程序功能:求字符串“This is my Basic”所有字符的ASCII码之和。程序中有错误。改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Dim s$, i% Dim sum& sum = 0 s = "This is my Basic" For i = 1 To s sum = sum + chr(Mid$(s, i, 1)) Next i Print sum End Sub
1436
216
程序功能:先分别求字符串中数字字符的ASCII码之和digit,字母字符的ASCII码之和 alpha。再输出alpha-digit的值。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim str$, ch$ Dim i%, digit&, alpha& digit = 0: alpha = 0 str$ = "87IM&2345kjwdssdcf" For i = 1 To str ch = Mid$(str, i, 1) Select Case ch Case 0 To 9 digit = digit + Asc(ch) Case A To Z alpha = alpha + Asc(ch) Case a To z alpha = alpha + Asc(ch) End Select Next i Print alpha-digit End Sub
769
217
程序功能:求四位奇数中,各位数字之和是25的倍数的数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim x%, a%, b%, c%, d% Dim num1& num1 = 0 For x = 1001 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a + b + c + d Mod 25 = 0 Then num1 = num1 + x End If Next x Print num1 End Sub
1298515
218
程序功能:求四位偶数中,各位数字之和是30的倍数的数之和。程序中有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Dim x%, a%, b%, c%, d% Dim num1& num1 = 0 For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a + b + c + d Mod 30 = 0 Then num1 = num1 + x End If Next x Print num1 End Sub
288840
219
程序功能:求满足以下条件的(abc)的组数:(1 1/(a^2)+1/(b^2)=1/(c^2) ;(2a>b>c ;(3a+b+c<100。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim c%, b%, a%, s$ s = 0 For c = 1 To 100 For b = 1 To 100 For a = 1 To 100 If a + b + c < 100 Or 1 / (a ^ 2) + 1 / (b ^ 2) = 1 / (c ^ 2) Then s = s + 1 Next a, b, c Print s End Sub
2
220
程序功能:求满足以下条件的(abc)的组数:(11/(a^2)+1/(b^2)=1/(c^2) ;(2a>b>c ;(3a+b+c<50。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim c%, b%, a%, s$ s = 0 For c = 1 To 50 For b = 1 To 50 For a = 1 To 50 If a + b + c < 50 Or 1 / (a ^ 2) + 1 / (b ^ 2) = 1 / (c ^ 2) Then s = s + 1 Next a, b, c Print s End Sub
1
221
程序功能:求四位奇数中,所有各位数字之积(积不为0)是60的倍数的数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim x%, a%, b%, c%, d% Dim num1& num1 = 0 For x = 1001 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a * b * c * d Mod 60 = 0 Then num1 = num1 + x End If Next x Print num1 End Sub
3456254
222
程序功能:所谓回文数是从左至右与从右至左读起来都是一样的数字,如:121是一个回文数。求100~200之间所有回文数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim a%, b%, c%, x%, s% s = 0 For x = 100 To 200 a =x / 100 b = x / 10- a * 10 c = x - a * 100 - b * 10 If a = c Then s = s + x Next Print s End Sub
1460
223
程序功能:求100~10000之间每位数字之和等于南方电网员工招聘平台5的整数的个数。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim k%, i%, i1%, i2%, i3%, i4% k = 0 For i = 100 To 5000 Select Case i Case 104 To 500 i1 = Int(i / 100) i2 = Int((i - i1 * 100) / 10) i3 = i - i1 * 100 - i2 * 10 If i1 + i2 + i3 = 5 Then k = k + 1 Case 1004 To 5000 i1 = Int(i / 1000) i2 = Int((i - i1 * 1000) / 10) i3 = Int((i - i1 * 1000 - i2 * 100) / 10) i4 = i - i1 * 1000 - i2 * 100 - i3 * 10 If i1 + i2 + i3 + i4 = 5 Then k = k + 1 End case Next i Print k End Sub
50
224
程序功能:求[1000,9999]之间能被7整除,且每位数字之和等于6的整数倍的数的个数。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() For a = 1 To 9 For b = 1 To 9 For c = 1 To 9 For d = 1 To 9 m = a * 1000 + b * 100 + c * 10 + d If (a + b + c + d) Mod 6 = 0 or m Mod 7 = 0 Then n = n + 1 Next d, c, b, a Print n End Sub
215
225
程序功能:某班级有学生若干名,依次编号为123……,除去编号12的两名学生外,所有学生编号之和是100的整数倍,如果知道学生编号之和小于1000,问共有学生多少人。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim k%, i% 'i为学生人数,K为学生编号之和 Dim flag As Boolean k = 0 i = 3 flag = false While flag k = k +1 If k / 100 <> Int(k / 100) Then i = i + 1 Else flag = False End If Wend Print i End Sub
37
226
程序功能:某试卷由26个问题组成,答对一题得8分,答错一题扣5分。今有一考生虽然回答了全部26个问题,但所得总分为零,问他错答多少题。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i%, j% 'i代表正确数,j代表错误数 For i = 1 To 26 j = 26 - i If 8 * i <> 5 * j Then Print i, j Next i End Sub
16
227
程序功能:在一个正整数序列中,第一项是1978,第二项是1979,从第三项起每一项等于前二项的差的绝对值,问此数列有多少项。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim k1%, k2%, i%, k% i = 2 k1 = 1978 k2 = 1979 k = Abs(k2 - k1) While (k2 >0) k1 = k2 k2 = k k = Abs(k2 - k1) i = i + 1 Wend Print i End Sub
2970
228
程序功能:求个位数是6,且能被3整除的所有四位数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i% Dim s& s = 0 For i = 1000 To 9999 If i Mod 3 = 0 Or i Mod 1000 = 6 Then s = s + i End If Next i Print s End Sub
1653300
229
程序功能:有一堆零件(零件个数不超过1000),如果分成4个零件一组余2个;7个一组余3个;天津大学研究生分数线 9个一组余5个。求这堆零件的个数有几种可能。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i%, x% For x = 1 To 1000 If x Mod 4 = 2 Or x Mod 7 = 3 Or x Mod 9 = 5 Then i = i + 1 End If Next x Print i End Sub
4
230
程序功能:求1200之间勾股数的组数(如a*a+b*b=c*c,abc为一组勾股数)。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim a As Long Dim b As Long Dim c As Long Dim i As Integer i = 0 For a = 3 To 199 For b = a + 1 To 200 Step 2 For c = 5 To 200 If c ^ 2 <> a ^ 2 + b ^ 2 Then i = i + 1 End If Next c Next a Next b Print i End Sub
75
231
程序功能:求这样的一个三位数,其个位数不大于2。若将个位数移动到百位之前(如:123移成312),新三位数大于原三位数的两倍。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i%, j%, k%, n%, m% For i = 1 To 9 For j = 0 To 9 For k = 1 To 9 n = 100 * i + 10 * k + j m = 100 * k + 10 * j + i If n >= 2 * m Or n <= 3 * m Then Print m Next k Next j Next i End Sub
102
232
程序功能:给定一个100行和100列的整数方阵,求左上至右下对角线上各元素之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private temp Option Base 1 Private Sub Command1_Click() Dim i%, j% Dim s& Dim a(100, 100) As Long s = 0 For i = 1 To 100 For j = 1 To 100 a(i, j) = i * j ‘请不要修改此行。 Next i Next j For i = 1 To 100 s = s + a(i, i) Next i Print s End Sub
338350
233
程序功能: 用子程序来计算12的阶乘,程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Call n(12) End Sub Public Sub n(a As Integer) Dim i As Integer Dim f As Integer f = 0 For i = 1 To a f = f * i Next i Print f End Sub
479001600
234
程序功能:求各位数字之积小于各位数字之和的三位数的个数。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim c%, x%, x1%, x2%, x3% c = 0 For x = 100 To 999 x1 = x Mod 100 x2 = Int(x / 10) - x1 * 10 x3 = int(x/10) If x1 * x2 * x3 < x1 + x2 + x3 Then c = c + 1 End If Next x Print c End Sub
199
235
程序功能:已知数列的第123项分别为001,以后各项都是其相邻的前三项之和。函数 fun的功能是:计算并输出该数列前 11项的平方根之和sum。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Print fun(10) End Sub Private Function fun(n As Integer) As Single Dim sum As Single Dim k%, s0%, s1%, s2% s0 = 0: s1 = 0: s2 = 1 sum = 0 For k = 4 To n s = s0 + s1 + s2 sum = sum + Sqr(s) s1 = s0: s2 = s1: s0 = s Next k fun = sum End Function
23.19775
236
程序功能:对于一个8×8的矩阵,求其主对角线元素之积,程序中有2处错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() '数据准备 Dim i, j Dim a(8, 8) For i = 1 To 8 For j = 1 To 8 a(i, j) = i * j + i Next j, i '数据准备 diag(a, 8) End Sub Private Sub diag(a, n) Dim sum, i sum = 0 For i = 1 To n sum = sum * a(i, i) Next i Print sum End Sub
14631321600
237
程序功能:利用函数pd计算1~2000之间能被1737整除的数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer Dim s As Long s = 0 For i = 1 To 2000 If pd(i) Then s = s + i Next i Print s End Sub Private Function pd(x As Integer) As Boolean If x Mod 17 = 0 Or x Mod 37 = 0 Then pd = True Else pd = False End If End Function
3774
238
程序功能:利用函数pd计算1~5000之间能被1737整除的数的个数。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer Dim s As Integer s = 0 For i = 1 To 5000 If pd(i) Then s = s + 1 Next i Print s End Sub Private Function pd(x As Integer) As Boolean If x Mod 17 = 0 Or x Mod 37 = 0 Then pd = True Else pd = False End If End Function
7
239
程序功能:求大于数组元素平均值的数组元素的个数。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() '数据准备 Dim a(100) Dim i For i = 1 To 100 a(i) = i * 10 + 5 Next i '数据准备 Sum = 0 For i = 1 To 100 Sum = Sum + a(i) Next i ave = Sum / 100 For i = 1 To 100 If a(i) > ave Then c = c + a(i) Next i Print c End Sub
50
240
程序功能:求S=1+1/2+1/3+……+1/100,程序中有两行错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() sum1 = sumd(100) Print sum1 End Sub Private Function sumd(n As Integer) As Single i=0 Do i = i + 1 s = s + 1 / i Loop Until i < n sumf = s End Function
5.187388
241
程序功能:求共有几组ijk符合算式ijk+kji=1333,其中ijk0~9之间的一位整数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer Dim j As Integer Dim k As Integer Dim n As Integer n = 0 For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 If ijk+kji = 1333 Then n = n + 1 End If Next k Next j Next i Print n End Sub
6
242
程序功能:求共有几组ijk符合算式ijk+kji=1534,其中ijk0~9之间的一位整数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer Dim j As Integer Dim k As Integer Dim n As Integer n = 0 For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 If ijk+kji = 1534 Then n = n + 1 End If Next k Next j Next i Print n End Sub
5
243
程序功能:求所有符合算式ij*ji=1300的最小数ij。其中ij1~9之间的一位整数。 程序中有两类错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer Dim j As Integer For i = 1 To 9 For j = 1 To 9 If ij*ji = 1300 Then Print 10 * i + j Exit For End If Next i If ij*ji = 1300 Then Exit For End If Next j End Sub
25
244
程序功能:求所有符合算式ij*ji=1300的最大数ij。其中ij1~9之间的一位整数。程序中有两类错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer Dim j As Integer For i = 9 To 1 For j = 9 To 1 If ij+ji= 1300 Then Print 10 * i + j Exit For End If Next j If ij+ji = 1300 Then Exit For End If Next i End Sub
52
245
程序功能:百钱百鸡问题。用100钱买100只鸡,公鸡一只五钱,母鸡一只三钱,雏鸡三只一钱,编程计算共有几种买法(要求每种鸡至少要买1)。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() s = 0 cock = 1 Do While cock <= 100 / 5 hen = 1 Do While hen <= 100 / 3 - cock chick = 100 - cock - hen If cock + hen + chick = 100 Then s = s + 1 End If hen = hen + 1 Loop cock = cock + 1 Loop Print s End Sub
3
246
程序功能:回文数是指正读和反读都一样的正整数。例如3773是回文数。求[10009999]之间的奇数回文数的个数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() n = 0 For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 100 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a = b Or d = c And x Mod 2 <> 0 Then n = n + 1 End If Next x Print n End Sub
50
247
程序功能:求各位数字的平方和为100,且能被3整除的四位数的个数。 程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim a As Integer Dim b As Integer Dim c As Integer Dim d As Integer Dim x As Integer Dim n As Integer n = 0 For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 100 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a ^ 2 + b ^ 2 + c ^ 2 + d ^ 2 = 100 And Mod(x,3) = 0 Then n = n + 1 End If Next x Print n End Sub
24
248
程序功能:用公式pi/4=1-1/3+1/5-1/7+…pi(pi为圆周率)的近似值。 程序中有错误,改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Print Format(fun(500), "#.>#") End Sub Private Function fun(n As Integer) As Integer Dim i As Integer Dim pi As Single pi = 0 For i = 1 To n pi = pi + (-1) ^ (n - 1) / (2 * i - 1) Next i fun = pi * 4 End Function
3.139593
249
程序功能:求[33336666]之间所有能被57整除的数的个数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim n As Integer Dim x As Integer n = 0 x = 3333 While x <= 6666 If x Mod 5 = 0 Or Mod 7 = 0 Then n = n + 1 End If x = x + 1 Loop Print n End Sub
95
250
程序功能:求 [200,300]之间的有奇数个不同因子的最大整数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim i As Integer Dim n As Integer For x = 300 To 200 n = 0 For i = 1 To x If x Mod i = 0 Then n = n + 1 End If Next i If n / 2 <> 0 Then Print x Exit For End If Next x End Sub
289
251
程序功能:求在[101000]之间的所有完数之和。各真因子之和(不包括自身)等于其本身的正整数称为完数。例如:6=1+2+36是完数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim sum As Integer Dim x As Integer, k As Integer Dim i As Integer sum = 0 For x = 10 To 1000 k = x For i = 1 To x If x Mod i = 0 Then x = x - i End If Next i If k = 0 Then sum = sum + x End If Next x Print sum End Sub
524
252
程序功能:一个数出现在该数的平方数的右边,称这个数为同构数。例如,5出现在平方数25的右边,25出现在平方数625的右边,则525都是同构数。求[11000]之间的所有同构数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() S=0 For x = 1 To 1000 y = Len(Trim(Str(x))) i = x * x Select y Case 1 If x = Val(Right(Trim(Str(i)), 1)) Then s = s + x End If Case 2 If x = Val(Right(Trim(Str(i)), 2)) Then s = s + x End If Case 3 If x = Val(Right(Trim(Str(i)), 3)) Then s = s + x End If Case 4 If x = Val(Right(Trim(Str(i)), 4)) Then s = s + x End If End Select Next x Print s End Sub
1114
253
程序功能:按以下递归公式求函数的值。程序中有错误,改正错误,使它能输出正确结果。 n=1 fun(n)=10 n>1 fun(n)=fun(n-1)+2
Private Sub Command1_Click() Print fun(10) End Sub Private Function fun(n As Integer) As Integer Dim c As Integer If n = 1 Then c = 10 Else c = fun(n - 1) + 2 End If Fun1 = c End Function
28
254
程序功能:求这样的一个三位数,其个位数不大于2。若将个位数移动到百位之前(如:321移成132),新三位数大于原三位数的两倍。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 n = 100 * i + 10 * j + k m = 100 * k + 10 * i + j If m >= 2 * n Then Print n Next k Next j Next i End Sub
102
255
程序功能:计算两个数的最大公约数。程序中有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Print fun(1248, 25736) End Sub Private Function fun(u%, v%) As Integer Dim temp%, t% If u < v Then temp = u: u = v: v = temp End If While (v <> 0) t = u %v u = v v = t Wend fun =t End Function
8
256
程序功能:求1900~2003年之间所有闰年年号之和。改正错误,使程序能输出正确的结果。(年号能被400整除的是闰年,或者被4整除但不能被100整除的是闰年)
Private Sub Command1_Click() Dim year% For year = 1900 To 2003 If (year Mod 400 = 0) and (year Mod 4 = 0 Or year Mod 100 <> 0) Then s = s + year End If Next year Print s End Sub
48800
257
程序功能:一个数出现在该数的平方数的右边,称这个数为同构数。例如,5出现在平方数25的右边,25出现在平方数625的右边,则525都是同构数。求[11000]之间的所有同构数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() S=0 For x = 1 To 1000 y = Len(Trim(Str(x))) i = x * x Select y Case 1 If x = Right(Trim(Str(i)), 1) Then s = s + x End If Case 2 If x = Val(Right(Trim(Str(i)), 2)) Then s = s + x End If Case 3 If x = Val(Right(Trim(Str(i)), 3)) Then s = s + x End If Case 4 If x = Val(Right(Trim(Str(i)), 4)) Then s = s + x End If End Select Next x Print s End Sub
1114
258
程序功能:求1900~2003年之间所有非闰年年号之和。改正错误,使程序能输出正确的结果。(年号能被400广东省选调生2022年报考条件整除的是闰年,或者被4整除但不能被100整除的是闰年)
Private Sub Command1_Click() Dim year% For year = 1900 To 2003 If (year Mod 400 = 0) and (year Mod 4 = 0 Or year Mod 100 <> 0) Then s = s + year End If Next year Print s End Sub
154156
259
程序功能:求[100999]之间满足以下条件的数的个数. 其个位数字与十位数字之和除以10所得的余数等于百位数字;该数是素数。程序中有错误。改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim x%, a%, b%, c%, s%, j% Dim flag As Boolean For x = 100 To 999 a = x / 100 b = Int(x / 10) - a * 10 c = x - a * 100 - b * 10 flag = True For j = 2 To x - 1 If x Mod j = 0 Then flag = False Exit For End If Next j If b + c Mod 10 = a And flag Then s = s + 1 End If Next x Print s End Sub
15
260
程序功能:一个数出现在该数的平方数的右边,称这个数为同构数。例如,5出现在平方数25的右边,25出现在平方数625的右边,则525都是同构数。求[11000]之间的同构数的个数。
Private Sub Command1_Click() Dim x%, s% Dim y As Long For x = 1 To 1000 y = x ^ 2 Select Case x Case 1 To 9 If x = Val(Right(Trim(Str(y)), 1)) Then s = s + 1 Case 10 To 99 If x = Val(Right(Trim(Str(y)), 3)) Then s = s + 1 Case 100 To 999 If x = Val(Right(Trim(Str(y)), 3)) Then s = s + 1 End case Next x Print s
7
261
程序功能:求字符串“This is my Basic”所有字符的ASCII码之和。程序中有错误。改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Dim s$, i% Dim sum& sum = 0 s = "This is my Basic" For i = 1 To s sum = sum + chr(Mid$(s, i, 1)) Next i Print sum End Sub
1436
262
程序功能:程序功能:设某四位数的千位数字与十位数字的和等于百位数字与个位数字的积,例如,对于四位数:95129+1=5*2,求所有这样的四位数之和。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim a As Integer Dim b As Integer Dim c As Integer Dim d As Integer Dim x As Integer Dim sum As Integer sum = 0 For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 100 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a + c = b * d Then sum = sum + x End If Next x Print sum End Sub
1078289
263
程序功能:求四位奇数中,各位数字之和是25的倍数的数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim x%, a%, b%, c%, d% Dim num1& num1 = 0 For x = 1001 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a + b + c + d Mod 25 = 0 Then num1 = num1 + x End If Next x Print num1 End Sub
1298515
264
程序功能:求四位偶数中,各位数字之和是30的倍数的数之和。程序中有错误,改正错误,使程序能输出正确结果。
Private Sub Command1_Click() Dim x%, a%, b%, c%, d% Dim num1& num1 = 0 For x = 1000 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a + b + c + d Mod 30 = 0 Then num1 = num1 + x End If Next x Print num1 End Sub
288840
265
程序功能:求满足以下条件的(abc)的组数:(1 1/(a^2)+1/(b^2)=1/(c^2) ;(2a>b>c ;(3a+b+c<100。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim c%, b%, a%, s$ s = 0 For c = 1 To 100 For b = 1 To 100 For a = 1 To 100 If a + b + c < 100 Or 1 / (a ^ 2) + 1 / (b ^ 2) = 1 / (c ^ 2) Then s = s + 1 Next a, b, c Print s End Sub
2
266
程序功能:求满足以下条件的(abc)的组数:(11/(a^2)+1/(b^2)=1/(c^2) ;(2a>b>c ;(3a+b+c<50。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim c%, b%, a%, s$ s = 0 For c = 1 To 50 For b = 1 To 50 For a = 1 To 50 If a + b + c < 50 Or 1 / (a ^ 2) + 1 / (b ^ 2) = 1 / (c ^ 2) Then s = s + 1 Next a, b, c Print s End Sub
1
267
程序功能:求四位奇数中,所有各位数字之积(积不为0)是60的倍数的数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim x%, a%, b%, c%, d% Dim num1& num1 = 0 For x = 1001 To 9999 a = Int(x / 1000) b = Int(x / 100) - a * 10 c = Int(x / 10) - a * 100 - b * 10 d = x - a * 1000 - b * 100 - c * 10 If a * b * c * d Mod 60 = 0 Then num1 = num1 + x End If Next x Print num1 End Sub
3456254
268
程序功能:所谓回文数是从左至右与从右至左读起来都是一样的数字,如:121是一个回文数。求100~200之间所有回文数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim a%, b%, c%, x%, s% s = 0 For x = 100 To 200 a =x / 100 b = x / 10- a * 10 c = x - a * 100 - b * 10 If a = c Then s = s + x Next Print s End Sub
1460
269
程序功能:求100~10000之间每位数字之和等于5的整数的个数。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim k%, i%, i1%, i2%, i3%, i4% k = 0 For i = 100 To 5000 Select Case i Case 104 To 500 i1 = Int(i / 100) i2 = Int((i - i1 * 100) / 10) i3 = i - i1 * 100 - i2 * 10 If i1 + i2 + i3 = 5 Then k = k + 1 Case 1004 To 5000 i1 = Int(i / 1000) i2 = Int((i - i1 * 1000) / 10) i3 = Int((i - i1 * 1000 - i2 * 100) / 10) i4 = i - i1 * 1000 - i2 * 100 - i3 * 10 If i1 + i2 + i3 + i4 = 5 Then k = k + 1 End case Next i Print k End Sub
50
270
程序功能:求[1000,9999]之间能被7整除,且每位数字之和等于6的整数倍的数的个数。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() For a = 1 To 9 For b = 1 To 9 For c = 1 To 9 For d = 1 To 9 m = a * 1000 + b * 100 + c * 10 + d If (a + b + c + d) Mod 6 = 0 or m Mod 7 = 0 Then n = n + 1 Next d, c, b, a Print n End Sub
215
271
程序功能:把一张一元钞票,换成一分、二分和五分硬币,每种至少8, 求方案数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim y As Integer Dim z As Integer Dim n As Integer n = 0 For x = 1 To 100 For y = 8 To 50 For z = 8 To 20 If x + y + z = 100 Then n = n + 1 End If Next z Next y Next x Print n End Sub
80
272
程序功能:求[3-1000]之间最大的五个素数之和。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim sum As Integer Dim i As Integer Dim flag As Boolean Dim n As Integer n = 0 sum = 0 x = 1000 Do flag = True For i = 2 To x - 1 If x Mod i = 0 Then flag = False Exit Do End If Next i If flag Then sum = sum + x n = n + 1 If n = 5 Then Exit Do End If End If x = x - 1 Loop While x<= 3 Print sum End Sub
4919
273
程序功能:求个位数是6,且能被3整除的所有四位数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i% Dim s& s = 0 For i = 1000 To 9999 If i Mod 3 = 0 Or i Mod 1000 = 6 Then s = s + i End If Next i Print s End Sub
1653300
274
程序功能:有一堆零件(零件个数不超过1000),如果分成4个零件一组余2个;7个一组余3个; 9个一组余5个。求这堆零件的个数有几种可能。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i%, x% For x = 1 To 1000 If x Mod 4 = 2 Or x Mod 7 = 3 Or x Mod 9 = 5 Then i = i + 1 End If Next x Print i End Sub
4
275
程序功能:求[2500]之间的所有素数之和。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim flag As Boolean Dim sum As Long Dim i As Integer sum = 0 For x = 3 To 500 flag = True For i = 2 To x - 1 If x Mod i = 0 Then flag = False Exit For End If Next i If not flag Then sum = sum + x End If Next x Print sum End Sub
21534
276
程序功能:求这样的一个三位数,其个位数不大于2。若将个位数移动到百位之前(如:123移成312),新三位数大于原三位数的两倍。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i%, j%, k%, n%, m% For i = 1 To 9 For j = 0 To 9 For k = 1 To 9 n = 100 * i + 10 * k + j m = 100 * k + 10 * j + i If n >= 2 * m Or n <= 3 * m Then Print m Next k Next j Next i End Sub
102
277
程序功能:计算1000以内,既能被6整除又能被8整除的数的个数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim n As Integer Dim x As Integer x = 1 n = 0 Do While x <= 1000 If x Mod 6 = 0 Or x Mod 8 = 0 Then n = n + 1 End case x = x + 1 Loop Print n End Sub
41
278
程序功能:有一个三位数满足下列条件: (1)三位数字各不相同; (2)此数等于它的各位数字的立方和。求这种三位数的个数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim a As Integer Dim b As Integer Dim c As Integer Dim n As Integer n = 0 x = 100 Do While x>= 999 a = Int(x / 100) b = Int(x / 10) - a * 10 c = x - a * 100 - b * 10 If a <> c Or b <> c Or a <> b Or x = a ^ 3 + b ^ 3 + c ^ 3 Then n = n + 1 End If x = x + 1 Loop Print n End Sub
4
279
程序功能: 建立一个过程来计算12的阶乘,程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Call n(12) End Sub Public Sub n(a As Integer) Dim i As Integer Dim f As Integer f = 0 For i = 1 To a f = f * i Next i Print f End Sub
479001600
280
程序功能:求各位数字之积小于各位数字之和的三位数的个数。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim c%, x%, x1%, x2%, x3% c = 0 For x = 100 To 999 x1 = x Mod 100 x2 = Int(x / 10) - x1 * 10 x3 = int(x/10) If x1 * x2 * x3 < x1 + x2 + x3 Then c = c + 1 End If Next x Print c End Sub
199
281
程序功能:求一维数组a中数组元素的最大值。程序中有错误,改正错误,使程序能输出正确的结果。 Option Base 1
Private Sub Command1_Click() Dim max As Double Dim i% Dim a(100) As Double For i = 1 To 100 a(i) = Sin(i * 3.14159 / 3) * Cos(i * 3.14159 / 3) '该行不要修改 Next i max = a(1) For i = 2 To 100 If max < a(i) Then a(i)=max Next i Print Format(max, "0.>") '该行不要修改 End Sub
0.43306
282
程序功能:求一维数组a中数组元素的最小值。程序中有错误,改正错误,使程序能输出正确的结果。 Option Base 1
Private Sub Command1_Click() Dim i% Dim a(100) As Double Dim min As Double For i = 1 To 100 a(i) = Sqr(i) * Cos(i * 3.14159 / 12) '该行不要修改 Next i min = a(1) For i = 2 To 100 If min > a(i) Then a(i)=min Next i Print Format(min, "#.>") '该行不要修改 End Sub
9.16515
283
程序功能:已知数列的第123项分别为001,以后各项都是其相邻的前三项之和。函数 fun的功能是:计算并输出该数列前 11项的平方根之和sum。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Print fun(10) End Sub Private Function fun(n As Integer) As Single Dim sum As Single Dim k%, s0%, s1%, s2% s0 = 0: s1 = 0: s2 = 1 sum = 0 For k = 4 To n s = s0 + s1 + s2 sum = sum + Sqr(s) s1 = s0: s2 = s1: s0 = s Next k fun = sum End Function
23.19775
284
程序功能:已知248个正整数因子(:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。求[100,300]之间能被其因子数目整除的数中最大的数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim N As Integer Dim s As Integer Dim i As Integer For N = 300 To 100 s = 0 For i = 1 To N If N Mod i = 0 Then s = s + 1 End If Next i If s Mod N = 0 Then Print N Exit For End If Next N End Sub
296
285
程序功能:利用函数pd计算1~2000之间能被1737整除的数之和。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer Dim s As Long s = 0 For i = 1 To 2000 If pd(i) Then s = s + i Next i Print s End Sub Private Function pd(x As Integer) As Boolean If x Mod 17 = 0 Or x Mod 37 = 0 Then pd = True Else pd = False End If End Function
3774
286
程序功能:利用函数pd计算1~5000之间能被1737整除的数的个数。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i As Integer Dim s As Integer s = 0 For i = 1 To 5000 If pd(i) Then s = s + 1 Next i Print s End Sub Private Function pd(x As Integer) As Boolean If x Mod 17 = 0 Or x Mod 37 = 0 Then pd = True Else pd = False End If End Function
7
287
程序功能:求[444,666]之间最大的素数是多少?程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim i As Integer For x = 666 To 444 k = Int(Sqr(x)) For i = 2 To k If x Mod i = 0 Then Exit Do End If Next i If i > k Then Print x Exit For End If Next x End Sub
661
288
一辆以固定速度行驶的汽车,司机看到里程表上从左到右的读数和从右到左的读数是相同的,这个数是12321(公里)2小时后,里程表上再次出现一个新的对称数。问车的速度是多少公里/小时?
Private Sub Form_Click() Dim m As Long Dim n As Long Dim a(0 To 4) As Byte m = 12321 n = m Do n = n + 1 For i = 0 To 4 a(i) = n \ 10 ^ i Mod 10 Next i _______________ Print (n - m) / 2 End Sub
50
289
n个人围成一圈(编号为1-n),从第1号的人开始从1报数,凡报到3的倍数的人离开圈子,然后再数下去,直到最后只剩一个人为止。问当n17时,剩下的人是多少号?
Private Sub Form_Click() Const OUT As Integer = -1 Dim n As Integer,m As Integer,i As Integer,num1 As Integer,num2 As Integer Dim a() As Integer n = 17 m = 3 ReDim a(n) For i = 1 To n a(i) = i Next num1 = 0 Do For i = 1 To n If a(i) <> OUT Then Num1 = num1 + 1 If num1 Mod m = 0 Then num2 = num2 + 1 If num2 = n Then Print a(i); Exit Do End If ________________ End If End If Next i Loop End Sub
11
290
n个人围成一圈(编号为1-n),从第1号的人开始从1报数,凡报到3的倍数的人离开圈子,然后再数下去,直到最后只剩一个人为止。问当n37时,剩下的人是多少号?
Private Sub Form_Click() Const OUT As Integer = -1 Dim n As Integer,m As Integer,i As Integer,num1 As Integer,num2 As Integer Dim a() As Integer n = 37 m = 3 ReDim a(n) For i = 1 To n a(i) = i Next num1 = 0 Do For i = 1 To n If a(i) <> OUT Then Num1 = num1 + 1 If num1 Mod m = 0 Then num2 = num2 + 1 If num2 = n Then Print a(i); Exit Do End If ________________ End If End If Next i Loop End Sub
19
291
求数列f(n) = n*n+n+41的前100项中素数的个数
Private Sub Form_click() num = 0 For n = 1 To 100 fn = n * n + n + 41 flag = 1 For m = 2 To Sqr(fn) If ________________ Then flag = 0 Exit For End If Next If flag = 1 Then num = num + 1 End If Next n Print num End Sub
86
292
求整数123456的质因子个数。如722*2*2*3*3,则因子个数为5
Private Sub Form_Click() Dim n As Long Dim m As Long Dim num As Long n = 123456 m = 2 While (m <= n) If (n Mod m = 0) Then num = num + 1 ________________ Else m = m + 1 End If Wend Print num End Sub
8
293
2473824894的最大公约数。
Private Sub Form_click() Dim a As Integer Dim b As Integer Dim i As Integer Dim t As Integer a = 24738 b = 24894 If a > b Then t = a: a = b: b = t i = a Do While _______________________________ i = i - 1 Loop Print i End Sub
6
294
2473824894的最小公倍数。
Private Sub Form_click() Dim a As Integer Dim b As Integer Dim i As Long a = 24738 b = 24894 i = a Do While ________________________________ i = i + a Loop Print i End Sub
102637962
295
[1000,20000]之间最大的素数
Private Sub Form_Click() Dim n As Long Dim flag As Boolean n = 20000 Do flag = True For m = 2 To Sqr(n) If n Mod m = 0 Then ________________ Exit For End If Next If Not flag Then n = n - 1 End If Loop Until flag Print n End Sub
19997
296
[5000,6000]之间最小的素数
Private Sub Form_Click() Dim n As Integer Dim m As Integer Dim nIsPrime As Boolean For n = 5000 To 6000 ________________ For m = 2 To Sqr(n) If n Mod m = 0 Then nIsPrime = False Exit For End If Next If nIsPrime Then Print n Exit For End If Next End Sub
5003
297
[8000,9000]之间最小的素数
Private Sub Form_Click() Dim n As Integer Dim m As Integer Dim nIsPrime As Boolean For n = 4000 To 5000 ________________ For m = 2 To Sqr(n) If n Mod m = 0 Then nIsPrime = False Exit For End If Next If nIsPrime Then Print n Exit For End If Next End Sub
8009
298
12345最大的质因子
Private Sub Form_Click() Dim n As Integer Dim m As Integer n = 12345 m = n Do If ________________________________ Then Print m Exit Do Else m = m - 1 End If Loop End Sub Function IsPrime(n As Integer) As Boolean Dim flag As Boolean flag = True For i = 2 To Sqr(n) If n Mod i = 0 Then flag = False Exit For End If Next IsPrime = flag
823
299
12349的最小质因子。
Private Sub Form_Click() Dim n As Integer Dim m As Integer n = 12349 m = 2 Do If ________________________________ Then Print m Exit Do Else m = m + 1 End If Loop End Sub Function IsPrime(n As Integer) As Boolean Dim flag As Boolean flag = True For i = 2 To Sqr(n) If n Mod i = 0 Then flag = False Exit For End If Next IsPrime = flag
53
300
士兵在演练过程中,队伍变换成10213560行时,队形都能成为矩形。问参加演练的士兵最少有多少人?
Private Sub Form_Click() Dim a%, b%, c%, d%, n% a = 10 b = 21 c = 35 d = 60 n = 60 Do While ________________________________ n = n + 1 Loop Print n End Sub
420
301
士兵在演练过程中,队伍变换成10223360行时,队形都能成为矩形。问参加演练的士兵最少有多少人?
Private Sub Form_Click() Dim a, n%, max, r a = Array(10, 22, 33, 60) max = a(0) For i = 1 To 3 If max < a(i) Then max = a(i) Next i n = max Do r = 0 For i = 0 To 3 r = r + n Mod a(i) Next i If r = 0 Then Exit Do End If _______________ Loop Print n End Sub
660
302
算年龄。用爷爷的年龄的5倍加6得的和,再乘以20,再加上奶奶的年龄,再减去365,得数为6924,又知爷爷比奶奶大2岁。求爷爷、奶奶的年龄的和。
Private Sub Form_Click() For a = 1 To 200 For b = 1 To 200 If ________________________________ Then Print a + b End If Next b Next a End Sub
140
303
宴会上一共有1225次握手,设每一位参加宴会的人对其他与会人士都有一样的礼节,那么与会人士有多少?
Private Sub Form_Click() Dim n As Long n = 1225 Do n = n - 1 ________________ Print n End Sub
50
304
a+b+c+d100,且a+4b-4c*4d/4m,求m
Private Sub Form_Click() m = 0 Do m = m + 4 a = m - 4 b = m + 4 c = m / 4 d = m * 4 ________________________________ Print m End Sub
16
305
2709021672113528127的最大公约数。 Option Base 1
Private Function Divisor(ByVal m As Long, ByVal n As Long) As Long Dim t As Long Dim r As Long If m < n Then t = m: m = n: n = t Do r = m Mod n m = n n = r Loop Until r = 0 Divisor = m End Function Private Sub Form_Click() Dim a, gcd&, i As Byte a = Array(27090, 21672, 11352, 8127) gcd = a(1) For i = 1 To UBound(a) gcd =________________ Next Print gcd End Sub
129
306
175240360的最小公倍数。 Option Base 1
Private Function Divisor(ByVal m As Long, ByVal n As Long) As Long Dim t As Long Dim r As Long If m < n Then t = m: m = n: n = t Do r = m Mod n m = n n = r Loop Until r = 0 Divisor = m End Function Private Function Multiple(ByVal m As Long, ByVal n As Long) As Long Multiple = ________________________________ End Function Private Sub Form_Click() Dim a Dim lcm& Dim i As Byte a = Array(175, 240, 360) lcm = a(1) For i = 1 To UBound(a) lcm =Multiple(lcm, a(i)) Next Print lcm End Sub
25200
307
金星和地球在某一时刻相对于太阳处于某一确定位置,已知金星绕太阳一周为225日,地球绕太阳一周为365日,问两个行星至少经过多少日仍同时回到原来的位置上?
Private Sub Form_Click() Dim m0&, n0& Dim m As Long Dim n As Long Dim r As Long m0 = 365 n0 = 225 m = m0 n = n0 r = m Mod n While ________________ m = n n = r r = m Mod n Wend Print m0 * n0 / n End Sub
1642
308
求表达式e^x ≈1xx^2/2!+x^3/3!+x^4/4!……+x^n/n!的近似值,设x=9,n25
Private Sub Form_click() 'e^x ≈1xx^2/2!+x^3/3!+x^4/4!……+x^n/n! Dim n As Integer, x As Integer Dim i As Integer Dim xpower As Single Dim y As Single x = Val(InputBox("请输入x")) n = Val(InputBox("请输入n")) y = 1 factor = 1 For i = 1 To n factor = factor * i xpower = x ^ i ________________________________ Next i Print y End Sub
8103.059
309
求表达式e^x ≈1xx^2/2!+x^3/3!+x^4/4!……+x^n/n!的近似值,直到最后一项小于0.01为止;设x9
Private Sub Form_click() 'e^x ≈1xx^2/2!+x^3/3!+x^4/4!……+x^n/n! Dim x As Integer, i As Integer Dim xpower As Single Dim z As Single Dim y As Single x = Val(InputBox("请输入x")) i = 1 z = 1 y = 1 factor = 1 Do While z > 0.01 factor = factor * i xpower = x ^ i ________________ y = y + z i = i + 1 Loop Print y End Sub
8103.081
310
sin(x)≈xx^3/3!+x^5/5!-……+(-1)^(n-1)*(x^(2n-1))/(2n-1)!的公式求近似值。设x=7,n15
Private Sub Form_click() Dim n As Integer, x As Integer Dim i As Integer Dim xpower As Single Dim y As Single x = Val(InputBox("请输入x")) n = Val(InputBox("请输入n")) y = 0 For i = 1 To n factor = 1 For j = 1 To 2 * i - 1 factor = factor * j Next j xpower = x ^ (2 * i - 1) ________________________________ Next i Print format(y, "0.>##") End Sub
0.6569831
311
sin(x)≈xx^3/3!+x^5/5!-……+(-1)^(n-1)*(x^(2n-1))/(2n-1)!的公式求近似值,直到最后一项绝对值小于0.00001为止。设x7
Private Sub Form_click() Dim x As Integer, i As Integer Dim xpower As Single Dim y As Single x = Val(InputBox("请输入x")) i = 0 z = 1 y = 0 Do While Abs(z) > 0.00001 factor = 1 i = i + 1 For j = 1 To 2 * i - 1 factor = factor * j Next j xpower = x ^ (2 * i - 1) ________________________________ y = y + z Loop Print format(y, "0.>##") End Sub
0.6569827
312
cos(x)≈1x^2/2!+x^4/4!-……+(-1)^(n)*(x^(2n))/(2n)!的公式求近似值,设x9n15
Private Sub Form_click() Dim n As Integer, x As Integer Dim i As Integer Dim xpower As Single Dim y As Single x = Val(InputBox("请输入x")) n = Val(InputBox("请输入n")) y = 1 For i = 1 To n factor = 1 For j = 1 To 2 * i factor = factor * j Next j xpower = x ^ (2 * i) ________________________________ Next i Print format(y, "0.>#") End Sub
-0.911208
313
cos(x)≈1x^2/2!+x^4/4!-……+(-1)^(n)*(x^(2n))/(2n)!的公式求近似值,直到最后一项绝对值小于0.00001为止。设x7
Private Sub Form_click() Dim x As Integer, i As Integer Dim xpower As Single Dim y As Single x = Val(InputBox("请输入x")) i = 0 z = 1 y = 1 Do While Abs(z) > 0.00001 factor = 1 i = i + 1 For j = 1 To 2 * i factor = factor * j Next j xpower = x ^ (2 * i) ________________________________ y = y + z Loop Print format(y, "0.>#") End Sub
0.753895
314
已知Sn=A1+A2+A3+...+An, 其中,n为奇数时An=n-1,n为偶数时,An=n+1.例如:S6=0+3+2+5+4+7, 求:S60=A1+A2+A3+...+A60.
Private Sub Form_click() Dim i As Integer Dim t As Integer Dim a As Integer i = 1 t = 0 Do While i <= 60 If i Mod 2 = 0 Then ________________ Else a = i - 1 End If t = t + a i = i + 1 Loop Print t End Sub
1830
315
已知数组S(x)中数组元素的值与Sinx)一一对应,1=<100,用冒泡法对数组进行从小到大的排序,并求出排完序之后S47)的值。 td <>
Private Sub Form_click() Dim s(100) As Single Dim k As Integer Dim j As Integer For k = 1 To 100 s(k) = Sin(k) Next k For k = 1 To 99 For j = 1 To 100 - k If s(j) > s(j + 1) Then ________________________________ End If Next j Next k Print format(s(47), "0.>##") End Sub
-0.1323518
316
已知数组S(x)中数组元素的值与Cosx)一一对应,1=<100,用冒泡法对数组进行从小到大的排序,并求出排完序之后S50)的值。 td <>
Private Sub Form_click() Dim s(100) As Single Dim k As Integer Dim j As Integer For k = 1 To 100 s(k) = Cos(k) Next k For k = 1 To 99 For j = 1 To 100 - k If s(j) > s(j + 1) Then ________________________________ End If Next j Next k Print Format(s(50), "0.###") End Sub
-0.013
317
已知数组S(x)中数组元素的值与Cosx)一一对应,100=<200,用比较法对数组进行从小到大的排序,并求出排完序之后S150)的值。 td <>
Private Sub Form_click() Dim s(101 To 200) As Single Dim k As Integer Dim j As Integer For k = 101 To 200 s(k) = Cos(k) Next k For k = 101 To 199 For j = k + 1 To 200 If s(k) > s(j) Then ________________________________ End If Next j Next k Print Format(s(150), "0.###") End Sub
-0.049
318
已知数组S(x)中数组元素的值与Sinx)一 一对应,100=<200,用比较法对数组进行从小到大的排序,并求出排完序之后S150)的值。 td <>
Private Sub Form_click() Dim s(101 To 200) As Single Dim k As Integer Dim j As Integer For k = 101 To 200 s(k) = Sin(k) Next k For k = 101 To 199 For j = k + 1 To 200 If s(k) > s(j) Then ________________________________ End If Next j Next k Print s Format(s(150), "0.###") End Sub
-0.044
319
求在 1,2,3,...,100, 任选两个不同的数,要求它们的和能被37整除的数的对数(注意:3+55+3认为是同一对数)
Private Sub Form_click() Dim n As Integer Dim k As Integer n = 0 k = 1 Do While k <= 100 j = 1 Do While j < k If ________________________________Then n = n + 1 j = j + 1 Loop k = k + 1 Loop Print n End Sub
236
320
求在 1,2,3,...,100, 任选两个不同的数,它们的和能被37整除,这样的数共有多少对?(注意:3+55+3认为是同一对数)
Private Sub Form_click() Dim n As Integer Dim k As Integer n = 0 k = 1 Do While k <= 100 j = 1 Do While j < k If ________________________________ Then n = n + 1 j = j + 1 Loop k = k + 1 Loop Print n End Sub
2121
321
已知S1=1, S2=1+2, S3=1+2+3,...,SN=1+2+3+...+N, 求在S1,S2,S3,...,S100 ,所有能被37整除的数之和.
Private Sub Form_click() k = 1 n = 0 S = 0 Sum = 0 Do While k <= 100 S = S + k If Int(S / 3) = S / 3 And Int(S / 7) = S / 7 Then ________________ k = k + 1 Loop Print Sum End Sub
31500
322
已知S1=1, S2=1+2, S3=1+2+3,..., SN=1+2+3+...+N, S1,S2,S3,...,S100 , 有多少个能被37整除?
Private Sub Form_click() k = 1 N = 0 S = 0 Do While k <= 100 S = S + k If Int(S / 3) = S / 3 And Int(S / 7) = S / 7 Then ________________ k = k + 1 Loop Print N End Sub
18
323
已知菲波纳契数列{ X },X(1)=0,X(2)=1,X(n)=X(n-1)+X(n-2),编程求数列前30个数中,所有质数的和。
Private Sub Form_Click() Dim s As Long Dim I As Integer Dim No(30) As Long No(1) = 0 No(2) = 1 No(3) = 1 s = 2 For I = 4 To 30 ________________________________ j = 2: k = Int(No(I) / 2) Do While j <= k If No(I) Mod j = 0 Then Exit Do j = j + 1 Loop If j > k Then s = s + No(I) Next I Print s End Sub
544830
324
已知菲波纳契数列{ X },X(1)=0,X(2)=1,X(n)=X(n-1)+X(n-2),编程求数列前30个数中,有多少个质数。
Private Sub Form_Click() Dim s As Long Dim I As Integer Dim No(30) As Long No(1) = 0 No(2) = 1 No(3) = 1 s = 2 For I = 4 To 30 ________________________________ j = 2: k = Int(No(I) / 2) Do While j <= k If No(I) Mod j = 0 Then Exit Do j = j + 1 Loop If j > k Then s = s + 1 Next I Print s End Sub
11
325
求三位数中,个位数字与十位数字之和除以10所得的余数是百位数字,且百位数字是偶数的数的个数。
Private Sub Form_click() Dim s As Integer Dim x As Integer Dim a As Integer Dim b As Integer Dim c As Integer s = 0 x = 100 Do While x <= 999 a = Int(x / 100) b = Int(x / 10) - a * 100 c = x - a * 100 - b * 10 If ______________________________Then s = s + 1 x = x + 1 Loop Print s End Sub
40
326
求三位数中,个位数字与十位数字之和除以10所得的余数是百位数字,且百位数字是偶数的数的和。
Private Sub Form_click() Dim s As Integer Dim x As Integer Dim a As Integer Dim b As Integer Dim c As Integer s = 0 x = 100 Do While x <= 999 a = Int(x / 100) b = Int(x / 10) - a * 100 c = x - a * 100 - b * 10 If ___________________________________ Then s = s + x x = x + 1 Loop Print s End Sub
21980
327
1-1000之间的全部同构数的个数。同构数是指一个数,它出现在它的平方数的右端。例如,5的平方是25525中右端的数,5就是一个同构数。同理,25也是一个同构数。
Private Sub Form_click() For i = 1 To 999 j = i * i Select Case j Case Is < 99 k = j Mod 10 Case Is < 999 k = j Mod 100 Case Else k = j Mod 1000 End Select If ________________Then s = s + 1 Next i Print s End Sub
6
328
1-1000之间的全部同构数的和。同构数是指一个数,它出现在它的平方数的右端。例如,5的平方是25525中右端的数,5就是一个同构数。同理,25也是一个同构数。
Private Sub Form_click() For i = 1 To 999 j = i * i Select Case j Case Is < 99 k = j Mod 10 Case Is < 999 k = j Mod 100 Case Else k = j Mod 1000 End Select If ________________ Then s = s + i Next i Print s End Sub
1038
329
求方程5X-4Y=2,在|X|<=100,|Y|<=50内的整数解中|X|+|Y|最大值?
Private Sub Form_click() Max = 0 For x = -100 To 100 For y = -50 To 50 If 5 * x - 4 * y = 2 Then s = Abs(x) + Abs(y) ________________________________ End If Next y Next x Print Max End Sub
86
330
编程求方程5X+4Y=2,在|X|<=50,|Y|<=100内的整数解,X+Y最大值是多少?
Private Sub Form_click() Max = 0 For x = -100 To 100 For y = -50 To 50 If 5 * x - 4 * y = 2 Then s = x + y ________________________________ End If Next y Next x Print Max End Sub
86
331
编程计算s=a+aa+aaa+…….+a…a(最后一项有na),设n10a9 s=9+99+…+9999999999 (a=9,n=10)
Private Sub Form_click() Dim s As Double j = 0 s = 0 For i = 1 To 10 ________________ s = s + j Next s = s * 9 Print s End Sub
11111111100
332
[1,10000]范围内考察个位数字是1的素数个数。
Private Sub Form_click() For i = 2 To 10000 j = 2: k = Int(i / 2) + 1 Do While j <= k If i Mod j = 0 Then Exit Do j = j + 1 Loop If j > k Then m = Str(i) ________________________________ If mr = "1" Then s = s + 1 End If Next i Print s End Sub
306
333
[1,10000]范围内考察个位数字是3的素数有多少个?
Private Sub Form_click() For i = 2 To 10000 j = 2: k = Int(i / 2) + 1 Do While j <= k If i Mod j = 0 Then Exit Do j = j + 1 Loop If j > k Then m = Str(i) ________________________________ If mr = "3" Then s = s + 1 End If Next i Print s End Sub
310
334
[1,10000]范围内考察个位数字是7的素数有多少个?
Private Sub Form_click() For i = 2 To 10000 j = 2: k = Int(i / 2) + 1 Do While j <= k If i Mod j = 0 Then Exit Do j = j + 1 Loop If j > k Then m = Str(i) ________________ If mr = "7" Then s = s + 1 End If Next i Print s End Sub
308
335
一个素数称之为超级素数,若该素数依次去掉个位,十位,...等等,每次所得的数仍然是素数。例如239就是超级素数。求[100,9999]之内超级素数的个数
Private Sub Form_click() Dim a As Integer, j As Integer, k As Integer s = 0 For i = 100 To 9999 a = i j = 2 k = Int(Sqr(i)) + 1 Call pd(a, j, k) If j > k Then a = Fix(i / 10): j = 2: k = Int(Sqr(a)) + 1 Call pd(a, j, k) If j > k Then a = Fix(i / 100): j = 2: k = Int(Sqr(a)) + 1 Call pd(a, j, k) If j > k Then a = Fix(i / 1000): j = 2: k = Int(Sqr(a)) + 1 Call pd(a, j, k) ________________________________ End If End If End If Next i Print s End Sub Sub pd(a1 As Integer, j1 As Integer, k1 As Integer) Do While j1 <= k1 If a1 Mod j1 = 0 Then Exit Do j1 = j1 + 1 Loop End Sub
44
336
一个素数称之为超级素数,若该素数依次去掉个位,十位,...等等,每次所得的数仍然是素数。例如239就是超级素数。求[100,9999]之内超级素数的和
Private Sub Form_click() Dim a As Integer, j As Integer, k As Integer s = 0 For i = 100 To 9999 a = i j = 2 k = Int(Sqr(i)) + 1 Call pd(a, j, k) If j > k Then a = Fix(i / 10): j = 2: k = Int(Sqr(a)) + 1 Call pd(a, j, k) If j > k Then a = Fix(i / 100): j = 2: k = Int(Sqr(a)) + 1 Call pd(a, j, k) If j > k Then a = Fix(i / 1000): j = 2: k = Int(Sqr(a)) + 1 Call pd(a, j, k) ________________________________ End If End If End If Next i Print s End Sub Sub pd(a1 As Integer, j1 As Integer, k1 As Integer) Do While j1 <= k1 If a1 Mod j1 = 0 Then Exit Do j1 = j1 + 1 Loop End Sub
85574
337
一个素数称之为超级素数,若该素数依次去掉个位,十位,...等等,每次所得的数仍然是素数。例如239就是超级素数。求[100,9999]之内,按从小到大排列顺序,第40个超级素数的值
Private Sub Form_click() Dim a As Integer, j As Integer, k As Integer s = 0 For i = 100 To 9999 a = i j = 2 k = Int(Sqr(i)) + 1 Call pd(a, j, k) If j > k Then a = Fix(i / 10): j = 2: k = Int(Sqr(a)) + 1 Call pd(a, j, k) If j > k Then a = Fix(i / 100): j = 2: k = Int(Sqr(a)) + 1 Call pd(a, j, k) If j > k Then a = Fix(i / 1000): j = 2: k = Int(Sqr(a)) + 1 Call pd(a, j, k) If j > k Then s = s + 1 ________________________________ End If End If End If End If Next i End Sub Sub pd(a1 As Integer, j1 As Integer, k1 As Integer) Do While j1 <= k1 If a1 Mod j1 = 0 Then Exit Do j1 = j1 + 1 Loop End Sub
5939
338
求杨辉三角形中,第20行第10列的数为多少?杨辉三角形: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 …………………………
Private Sub Form_click() Dim a() As Long n = 20 ReDim a(n, n) For i = 1 To n a(i, i) = 1 a(i, 1) = 1 Next i For i = 3 To n For j = 2 To i - 1 ________________________________ Next j Next i Print a(20, 10); End Sub
92378
339
求杨辉三角形中,第19行第10列的数为多少?杨辉三角形: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 …………………………
Private Sub Form_click() Dim a() As Long n = 20 ReDim a(n, n) For i = 1 To n a(i, i) = 1 a(i, 1) = 1 Next i For i = 3 To n For j = 2 To i - 1 ________________________________ Next j Next i Print a(19, 10) End Sub
48620
340
利用函数sin(n)产生一个25×10的矩阵,求出最大值所在的行、列号乘积。
Private Sub Form_click() Dim a(25, 10) As Single n = 0 Max = 0 For i = 1 To 25 For j = 1 To 10 n = n + 15 a(i, j) = Sin(n) If ________________ Then Max = a(i, j) x = i y = j End If Next j Next i Print x * y End Sub
72
341
利用函数sin(n)产生一个25×10的矩阵,求出最小值所在的行、列号乘积。
Private Sub Form_click() Dim a(25, 10) As Single n = 0 Min = 0 For i = 1 To 25 For j = 1 To 10 n = n + 15 a(i, j) = Sin(n) If ________________________________ Then Min = a(i, j) x = i y = j End If Next j Next i Print x * y End Sub
34
342
利用函数cos(n)产生一个25×10的矩阵,求出最大值所在的行、列号乘积。
Private Sub Form_click() Dim a(25, 10) As Single n = 0 Max = 0 For i = 1 To 25 For j = 1 To 10 n = n + 15 a(i, j) = Cos(n) If ________________ Then Max = a(i, j) x = i y = j End If Next j Next i Print x*y End Sub
30
343
利用函数cos(n)产生一个25×10的矩阵,求出最小值所在的行、列号乘积。
Private Sub Form_click() Dim a(25,10) As Single n = 0 Min = 0 For i = 1 To 25 For j = 1 To 10 n = n + 9 a(i, j) = cos(n) If ________________Then Min = a(i, j) x = i y = j End If Next j Next i Print x*y End Sub
100
344
已知正整数A,B(假定A<>
Private Sub Command1_Click() Min = 5432 For a = 1 To 5432 For b = a + 1 To 5432 / a If a * b = 5432 Then s = a + b ________________ End If Next b Next a Print Min End Sub
153
345
编程求共有几组ijk符合算式ijkkji1333,其中ijk09之间的一位整数
Private Sub Form_Click() Dim i As Integer, j As Integer, k As Integer Dim m As Integer m = 0 For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 If ________________ Then m = m + 1 End If Next k Next j Next i Print m End Sub
6
346
编程求199的平方根的和并输出结果。(保留两位小数)
Private Sub cmdSqrt_Click() Dim i As Integer, s As Single For i = 1 To 99 ________________ Next i s = Round(s, 2) FontSize = 12 FontBold = True Print s End Sub
661.46
347
编程,求所有符合算式ij*ji1300的最小数ij(即i*10j)其中ij19之间的一位整数。
Private Sub cmdCount_Click() Dim i As Integer, j As Integer FontSize = 14 FontBold = True For i = 1 To 9 For j = 1 To 9 If ________________Then Print m Exit sub End If Next j Next i End Sub
25
348
编程求在四位数的奇数中,所有各位数字之和是25的倍数的数之和。
Private Sub Form_Click() Dim m%, a%, b%, c%, d%, s& s = 0 FontSize = 14: FontBold = True Print: Print: Print For m = 1001 To 9999 Step 2 a = Int(m / 1000) b = Int((m - 1000 * a) / 100) c = Int((m - 1000 * a - 100 * b) / 10) d = m Mod 10 If ________________ Then s = s + m Next m Print s End Sub
1298515
349
编程求在四位数的偶数中,所有各位数字之和是30的倍数的数之和。
Private Sub Form_Click() Dim m%, a%, b%, c%, d%, s& s = 0 FontSize = 14 FontBold = True For m = 1000 To 9998 Step 2 a = Int(m / 1000) b = Int((m - a * 1000) / 100) c = Int((m - a * 1000 - b * 100) / 10) d = m Mod 10 If ________________Then s = s + m Next m Print s End Sub
288840
350
编程求15000之间的能被5整除的前若干个偶数之和,当和大于500,终止求和,并输出该和。
Private Sub cmdSum_Click() Dim i As Integer, s As Long FontSize = 14 FontBold = True ________________ If i Mod 2 = 0 Then s = s + i If s > 500 Then Exit For Next i Print s End Sub
550
351
已知a,b,c为正整数,求满以下足条件的a,b,c的组数: a) a>b>c b) a+b+c<100 c)1/(a^2)+1/(b^2)=1/(c^2)
Private Sub Form_Click() Dim a!, b!, c!, m% m = 0 FontSize = 14: FontBold = True For c = 1 To 34 For b = c To 50 For a = b To 100 If ________________Then m = m + 1 End If Next a, b, c Print m End Sub
2
352
编程求在1000以内能被17或者23整除的正整数的个数。
Private Sub cmdCount_Click() Dim i As Integer, m As Integer FontSize = 14: FontBold = True Print: Print: Print m = 0 For i = 17 To 1000 If________________Then m = m + 1 Next i Print m End Sub
99
353
一个数如果刚好与它所有的因子之和相等,则称该数为完数”, 6123,则6就是个完数,200500之间所有的完数之和。
Private Sub Form_Click() Dim i%, j%, s As Long, m As Long s = 0 FontSize = 14: FontBold = True For i = 200 To 500 m = 0 For j = 1 To i - 1 If i Mod j = 0 Then ________________ End If Next j If i = m Then s = s + i Next i Print s End Sub
496
354
已知一个数列的前3项为001,从第4项开始,每项为前3项的和,编程求此数列的第36个数。
Private Sub Form_Click() Dim i%, f0&, f1&, f2&, f3& FontSize = 14: FontBold = True f0 = 0 f1 = 0 f2 = 1 For i = 4 To 36 ________________ f0 = f1 f1 = f2 f2 = f3 Next i Print f3 End Sub
334745777
355
一个数如果刚好与它所有的因子之和相等,则称该数为完数”,61+2+3,则6就是个完数。编程求[8000,9000]之间完数的个数。
Private Sub Form_Click() Dim i%, j%, s As Long, m As Long s = 0 FontSize = 14: FontBold = True For i = 8000 To 9000 m = 0 For j = 1 To i - 1 If i Mod j = 0 Then ________________ End If Next j If i = m Then s = s + 1 End If Next i Print s End Sub
1
356
编程计算在[100,500]的范围内有多少这样的个数:其每位数字的乘积大于它的每位数字之和。(如数字232×3>2+3)
Private Sub Form_Click() Dim i%, a%, b%, m% m = 0 FontSize = 14: FontBold = True For i = 100 To 500 a = Int(i / 10) b = ________________ If a * b > a + b Then m = m + 1 Next i Print m End Sub
320
357
编写程序,求108887之间的所有素数的个数。
Private Sub Command1_Click() Dim x As Long, Number, i As Integer FontSize = 14: FontBold = True Number = 0 For x = 11 To 8887 Step 2 i = 2: k = Int(x / 2) Do While i <= k If x Mod i = 0 Then Exit Do i = i + 1 Loop If ________________ Then Number = Number + 1 End If Next x Print Number End Sub
1103
358
我国古代数学家在《算经》中出了一道题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、母、雏各几何?意为公鸡5吊钱1只,母鸡 3吊钱1只,3只小鸡值1吊钱。编程实现用100吊钱买100只鸡,公鸡、母鸡、小鸡每种鸡至少一只,有多少种买法?
Private Sub command1_Click() Dim a%, b%, c%, s% FontSize = 14: FontBold = True Print: Print: Print s = 0 For a = 1 To 20 For b = 1 To 34 ________________ If 5 * a + 3 * b + c / 3 = 100 Then s = s + 1 Next b Next a Print s End Sub
3
359
目前世界上人口为60亿,如果以每年1.4%的速度增长, nn为正整数)年后世界人口达到70亿,求n
Private Sub command1_Click() Dim p As Single Dim r As Single Dim n As Integer FontSize = 14: FontBold = True p = 60 r = 0.014 n = 0 Do n = n + 1 ________________ Loop Until p >= 70 Print n End Sub
12
360
Fibonacci数列的前几个数为:011235,其规律是: F1 0 n = 1) F2 1 n = 2 Fn Fn-1Fn-2 (n ≥ 3
Private Sub Command1_Click() Dim f, lastf, prevf, sum& Dim n As Integer sum = 1: prevf = 0: lastf = 1 n = 3 Do While n <= 30 ________________ sum = sum + f prevf = lastf lastf = f n = n + 1 Loop FontSize = 14: FontBold = True Print sum End Sub
1346268
361
Fibonacci数列的前几个数为:011235,其规律是: F1 0 n = 1) F2 1 n = 2 Fn Fn-1Fn-2 (n ≥ 3) 编程求此数列的前40项之和。
Private Sub Command1_Click() Dim f, lastf, prevf, sum& Dim n As Integer sum = 1: prevf = 0: lastf = 1 n = 3 Do While n <= 40 ________________ sum = sum + f prevf = lastf lastf = f n = n + 1 Loop FontSize = 14: FontBold = True Print sum End Sub
165580140
362
某人想将手中的一张面值100元的人民币换成5元、1元和0.5元面值的票子100张,且要求每种至少1张。求换法的种数。
Private Sub cmdExchangeRMB_Click() Dim i, j As Integer, RMBsum As Single RMBsum = 0 For i = 1 To 11 For j = 1 To 100 - i If ________________ Then RMBsum = RMBsum + 1 Next j, i FontSize = 14: FontBold = True Print RMBsum End Sub
11
363
四位平方数:千位、百位数相同,十位、个位数相同,且是某一个二位数的平方,求四位平方数的个数。
Private Sub Command1_Click() N=0 For a = 0 To 9 For b = 0 To 9 For i = 10 To 99 ________________ If m = i * i Then n=n+1 Next i Next b Next a Printf n End Sub
1
364
1/2+2/3+3/5+5/8+……的前1000项的和。注:该数列从第二项开始,其分子等于前一项的分母,而其分母等于前一项分子与分母之和。要求:按四舍五入的方式精确到小数点后第二位。
Private Sub Command1_Click() fz = 1 fm = 2 s = fz / fm For i = 2 To 1000 ________________ t = fz fz = fm fm = fm + t Next i Print Round(s, 2) End Sub
617.95
365
要将一张100元的大钞票,换成等值的10元、5元、2元和1元一张的小钞票。要求每次换成40张小钞票,每种至少一张。编程求有多少种换法。
Private Sub Command1_Click() Dim i, j, k, m As Integer Dim RMBsum As Integer FontSize = 14: FontBold = True For i = 1 To 9 For j = 1 To 17 For k = 1 To 37 m = 40 - i - j - k If ________________ Then RMBsum = RMBsum + 1 Next k, j, i Print RMBsum End Sub
34
366
从键盘输入两个数5121131484131421,利用辗转相除法求它们的最大公约数。求需要经过多少次辗转。
Private Sub cmdGreatestCommonDivsion_Click() Dim m, n, r, t As Single, count% m = Val(InputBox("请输入第一个数:")) n = Val(InputBox("请输入第二个数:")) FontSize = 14: FontBold = True If m < n Then t = m: m = n: n = t count = 0 Do ________________ m = n n = r count = count + 1 Loop Until r = 0 Print count End Sub
18
367
高次方程尾数的问题:求13298次方的最后三位数是多少?编程实现之。
Private Sub cmdMantissa_Click() Dim i, x, y, last As Long y = 298: x = 13 last = 1 FontSize = 14: FontBold = True For i = 1 To y last = last * x last=last Mod 1000 Next i Print last Mod ________________ End Sub
929
368
以下程序的功能是求:在[100999]范围内同时满足以下两个条件的十进制数的个数。 其个位数字与十位数字之和除以10所得的余数是百位数字; 该数是素数。
Private Sub Command1_Click() n = 0 For i = 100 To 999 If prime(i) = True Then g = i Mod 10 s = i \ 10 Mod 10 b = i \ 100 If (g + s) Mod 10 = b Then n = n + 1 End If Next i Print n End Sub Private Function prime(x) As Boolean p = x \ 2 For i = 2 To p If x Mod i = 0 Then prime = False Exit For End If Next i If i > p Then ________________ End Function
15
369
抓交通肇事犯:一辆卡车违反交通规则,撞人后逃跑。现场有三人目击事件,但是没有记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但与前两位不同;丙说:四位的车号刚好是一个整数的平方。
Private Sub cmdTrafficTrouble_Click() Dim i, j, k, c As Integer FontSize = 14: FontBold = True For i = 1 To 9 For j = 0 To 9 If (i <> j) Then ________________ c = Int(Sqr(k)) If c * c = k Then Print k End If Next j, i End Sub
7744
370
4位反序数:设N是一个四位数,它的9倍恰好是其反序数,求N(反序数就是将整数的数字倒过来形成的整数,如1234的反序数是4321)
Private Sub cmdAgainstOrdinalNumber_Click() Dim d1, d2, d3, d4, d, i As Integer FontSize = 14: FontBold = True For i = 1000 To 1111 d1 = i Mod 10 d2 = (i \ 10) Mod 10 d3 = (i \ 100) Mod 10 d4 = i \ 1000 ________________ If d = i * 9 Then Print i Next i End Sub
1089
371
求具有abcd=(ab+cd)^2性质的四位数。编程实现之。
Private Sub cmdSpecialFour_Click() Dim n, a, b, count As Integer count = 0 FontSize = 14: FontBold = True For n = 1000 To 9999 a = Int(n / 100) b = n Mod 100 If ________________ Then count = count + 1 Next n Print count End Sub
3
372
然数对是指两个自然数的和与差都是平方数,如817的和8+17=25与其差17-8=9都是平方数,则称817是自然数对(817)。假定(A B)与(BA)是同一个自然数对且假定A>=B,求所有小于或等于100(即:A<=100,B<=100)的自然数对的组数。
Private Sub Command1_Click() n = 0 For a = 2 To 100 For b = 1 To a - 1 If ________________Then n = n + 1 Print a; b End If Next b Next a Print n End Sub
31
373
已知248个正整数因子(即:1234681224),而24正好能被其因子数8整除,求[10100]之间有多少个整数能被其因子的个数整除。
Private Sub Command1_Click() m = 0 For i = 10 To 100 n = 1 For j = 2 To i If i Mod j = 0 Then n = n + 1 End If Next j If ________________ Then m = m + 1 End If Next i Print m End Sub
12
374
所谓回文数是从左至右与从右至左读起来都是一样的数字,如:181是一个回文数。编程求出100968之间的所有回文数的个数。
Private Sub cmdPalindromeNumbere_Click() Dim i%, a%, b%, m% FontSize = 14: FontBold = True For i = 100 To 968 a = ________________ b = i Mod 10 If a = b Then m = m + 1 Next i Print m End Sub
86
375
编程序求四位数的奇数中,所有各位数字之积(且不为0)是600的倍数的数之和。
Private Sub Command1_Click() sum = 0 For i = 1001 To 9999 Step 2 d1 = i Mod 10 d2 = (i \ 10) Mod 10 d3 = (i \ 100) Mod 10 d4 = i \ 1000 d = d1 * d2 * d3 * d4 If ________________ Then sum = sum + i Next i Print sum End Sub
199956
376
编程序求四位数的偶数中,所有各位数字之积(且不为0)是60的倍数的数之和。
Private Sub Command1_Click() sum = 0 For i = 1000 To 9999 Step 2 d1 = i Mod 10 d2 = (i \ 10) Mod 10 d3 = (i \ 100) Mod 10 d4 = i \ 1000 d = d1 * d2 * d3 * d4 If ________________Then sum = sum + i Next i Print sum End Sub
2832006
377
若某整数平方等于某两个正整数平方之和的正整数称为弦数。例如:由于3^24^25^2,则为弦数,求[100200]之间弦数的数目。
Private Sub cmdChordCount_Click() Dim a, b, c, count As Integer FontSize = 14: FontBold = True count = 0 For c = 100 To 200 For a = 1 To c - 1 b = Sqr(c ^ 2 - a ^ 2) If ________________ Then count = count + 1 Exit For End If Next a, c Print count End Sub
55
378
若两素数之差为2,则称两素数为双胞胎素数,编程求[200,1000]之间有多少对双胞胎素数。
Private Sub cmdTwinsPrime_Click() Dim k, prime, j, i, Count As Integer FontSize = 14: FontBold = True Print: Print: Print prime = 2 For i = 200 To 1000 k = Sqr(i) For j = 2 To k If i Mod j = 0 Then Exit For Next j If j > k Then If i - prime = 2 Then Count = Count + 1 ________________ End If Next i Print Count End Sub
20
379
水仙花数是指这样的数,其各位数字的立方和等于该数本身,如: 153=1^3+5^3+3^3。求100999的范围内水仙花数的个数。
Private Sub cmdDaffodilCount_Click() Dim i%, a%, b%, c%, count% FontSize = 14: FontBold = True count = 0 i = 100 Do a = i \ 100 b = (i - 100 * a) \ 10 c = i Mod 10 If i = a ^ 3 + b ^ 3 + c ^ 3 Then count = count + 1 End If i = i + 1 ________________ Print count End Sub
4
380
水仙花数是指这样的数,其各位数字的立方和等于该数本身,如: 153=1^3+5^3+3^3。求100999的范围内所有水仙花数之和。
Private Sub cmdDaffodilSum_Click() Dim i%, a%, b%, c%, sum% FontSize = 14: FontBold = True Print: Print: Print sum = 0 i = 100 Do a = i \ 100 b = i \ 10 Mod 10 c = i Mod 10 If i = a ^ 3 + b ^ 3 + c ^ 3 Then sum = sum + i End If i = i + 1 ________________ Print sum End Sub
1301
381
设有十进制数字a,b,c,de,它们满足下列式子: abcd*e=bcde (a不等于0 e不等于01),求满足上述条件的四位数abcd的个数。
Private Sub cmdMeetConditon_Click() Dim a, b, c, d, e, comb, count As Integer count = 0 FontSize = 14: FontBold = True For a = 1 To 9 b = 0 For b = 0 To 9 For c = 0 To 9 For d = 0 To 9 For e = 2 To 9 If ________________ Then count = count + 1 End If Next e, d, c, b, a Print count End Sub
2
382
A,B,C三个正整数,当满足1/A^2+1/B^2=1/C^2关系时,称为倒勾股数。求130<150的倒勾股数有多少组。 td <>
Private Sub Command1_Click() n = 0 For a = 1 To 150 For b = a To 150 For c = 1 To 150 - a - b If________________Then n = n + 1 End If Next c Next b Next a Print n End Sub
1
383
设某四位数的各位数字的平方和等于100,共有多少个这种四位数?
Private Sub cmdFourSqr_Click() Dim a, b, c, d, i, count As Integer count = 0 i = 1111 FontSize = 14: FontBold = True Print: Print: Print Do Until i > 9999 a = i \ 1000 b = (i Mod 1000) \ 100 c = ________________ d = i Mod 10 If 100 = a ^ 2 + b ^ 2 + c ^ 2 + d ^ 2 Then count = count + 1 i = i + 1 Loop Print count End Sub
49
384
统计[521,8421]之间有多少个这样的整数,其各位数字之和能被7整除。
Private Sub cmdEveryNumCount_Click() Dim count As Integer count = 0 FontSize = 14: FontBold = True For i = 521 To 8421 Select Case i Case 521 To 999 a = i \ 100 b = i \ 10 Mod 10 c = i Mod 10 If (a + b + c) Mod 7 = 0 Then count = count + 1 Case ________________ a = i \ 1000 b = i \ 100 Mod 10 c = i \ 10 Mod 10 d = i Mod 10 If (a + b + c + d) Mod 7 = 0 Then count = count + 1 End Select Next i Print count End Sub
1126
385
统计[521,8421]之间有多少个这样的整数,其各位数字之积能被7整除。
Private Sub cmdEveryNumCount_Click() Dim count As Integer count = 0 FontSize = 14: FontBold = True For i = 521 To 8421 Select Case i Case 521 To 999 a = i \ 100 b = i \ 10 Mod 10 c = i Mod 10 If (a * b * c) Mod 7 = 0 Then count = count + 1 Case ________________ a = i \ 1000 b = i \ 100 Mod 10 c = i \ 10 Mod 10 d = i Mod 10 If (a * b * c * d) Mod 7 = 0 Then count = count + 1 End Select Next i Print count End Sub
4380
386
2473824894的最大公约数。
Private Sub Form_click() Dim a As Integer Dim b As Integer Dim i As Integer Dim t As Integer a = 24738 b = 24894 If a > b Then t = a: a = b: b = t i = a Do While _______________________________ i = i - 1 Loop Print i End Sub
6
387
求杨辉三角形中,第19行第10列的数为多少?杨辉三角形: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 …………………………
Private Sub Form_click() Dim a() As Long n = 20 ReDim a(n, n) For i = 1 To n a(i, i) = 1 a(i, 1) = 1 Next i For i = 3 To n For j = 2 To i - 1 ________________________________ Next j Next i Print a(19, 10) End Sub
48620
388
利用函数sin(n)产生一个25×10的矩阵,求出最大值所在的行、列号乘积。
Private Sub Form_click() Dim a(25, 10) As Single n = 0 Max = 0 For i = 1 To 25 For j = 1 To 10 n = n + 15 a(i, j) = Sin(n) If ________________ Then Max = a(i, j) x = i y = j End If Next j Next i Print x * y End Sub
72
389
利用函数sin(n)产生一个25×10的矩阵,求出最小值所在的行、列号乘积。
Private Sub Form_click() Dim a(25, 10) As Single n = 0 Min = 0 For i = 1 To 25 For j = 1 To 10 n = n + 15 a(i, j) = Sin(n) If ________________________________ Then Min = a(i, j) x = i y = j End If Next j Next i Print x * y End Sub
34
390
2473824894的最小公倍数。
Private Sub Form_click() Dim a As Integer Dim b As Integer Dim i As Long a = 24738 b = 24894 i = a Do While ________________________________ i = i + a Loop Print i End Sub
102637962
391
利用函数cos(n)产生一个25×10的矩阵,求出最小值所在的行、列号乘积。
Private Sub Form_click() Dim a(25,10) As Single n = 0 Min = 0 For i = 1 To 25 For j = 1 To 10 n = n + 9 a(i, j) = cos(n) If ________________Then Min = a(i, j) x = i y = j End If Next j Next i Print x*y End Sub
100
392
[1000,20000]之间最大的素数
Private Sub Form_Click() Dim n As Long Dim flag As Boolean n = 20000 Do flag = True For m = 2 To Sqr(n) If n Mod m = 0 Then ________________ Exit For End If Next If Not flag Then n = n - 1 End If Loop Until flag Print n End Sub
19997
393
[5000,6000]之间最小的素数
Private Sub Form_Click() Dim n As Integer Dim m As Integer Dim nIsPrime As Boolean For n = 5000 To 6000 ________________ For m = 2 To Sqr(n) If n Mod m = 0 Then nIsPrime = False Exit For End If Next If nIsPrime Then Print n Exit For End If Next End Sub
5003
394
已知正整数A,B(假定A<>
Private Sub Command1_Click() Min = 5432 For a = 1 To 5432 For b = a + 1 To 5432 / a If a * b = 5432 Then s = a + b ________________ End If Next b Next a Print Min End Sub
153
395
编程求共有几组ijk符合算式ijkkji1333 其中ijk09之间的一位整数
Private Sub Form_Click() Dim i As Integer, j As Integer, k As Integer Dim m As Integer m = 0 For i = 0 To 9 For j = 0 To 9 For k = 0 To 9 If ________________ Then m = m + 1 End If Next k Next j Next i Print m End Sub
6
396
编程求199的平方根的和并输出结果。(保留两位小数)
Private Sub cmdSqrt_Click() Dim i As Integer, s As Single For i = 1 To 99 ________________ Next i s = Round(s, 2) FontSize = 12 FontBold = True Print s End Sub
661.46
397
编程,求所有符合算式ij*ji1300的最小数ij(即i*10j)其中ij19之间的一位整数。
Private Sub cmdCount_Click() Dim i As Integer, j As Integer FontSize = 14 FontBold = True For i = 1 To 9 For j = 1 To 9 If ________________Then Print m Exit sub End If Next j Next i End Sub
25
398
编程求在四位数的奇数中,所有各位数字之和是25的倍数的数之和。
Private Sub Form_Click() Dim m%, a%, b%, c%, d%, s& s = 0 FontSize = 14: FontBold = True Print: Print: Print For m = 1001 To 9999 Step 2 a = Int(m / 1000) b = Int((m - 1000 * a) / 100) c = Int((m - 1000 * a - 100 * b) / 10) d = m Mod 10 If ________________ Then s = s + m Next m Print s End Sub
1298515
399
编程求在四位数的偶数中,所有各位数字之和是30的倍数的数之和。
Private Sub Form_Click() Dim m%, a%, b%, c%, d%, s& s = 0 FontSize = 14 FontBold = True For m = 1000 To 9998 Step 2 a = Int(m / 1000) b = Int((m - a * 1000) / 100) c = Int((m - a * 1000 - b * 100) / 10) d = m Mod 10 If ________________Then s = s + m Next m Print s End Sub
288840
400
编程求15000之间的能被5整除的前若干个偶数之和,当和大于500,终止求和,并输出该和。
Private Sub cmdSum_Click() Dim i As Integer, s As Long FontSize = 14 FontBold = True ________________ If i Mod 2 = 0 Then s = s + i If s > 500 Then Exit For Next i Print s End Sub
550
401
已知a,b,c为正整数,求满以下足条件的a,b,c的组数: a) a>b>c b) a+b+c<100 c) 1/(a^2)+1/(b^2)=1/(c^2)
Private Sub Form_Click() Dim a!, b!, c!, m% m = 0 FontSize = 14: FontBold = True For c = 1 To 34 For b = c To 50 For a = b To 100 If ________________Then m = m + 1 End If Next a, b, c Print m End Sub
2
402
编程求在1000以内能被17或者23整除的正整数的个数。
Private Sub cmdCount_Click() Dim i As Integer, m As Integer FontSize = 14: FontBold = True Print: Print: Print m = 0 For i = 17 To 1000 If________________Then m = m + 1 Next i Print m End Sub
99
403
一个数如果刚好与它所有的因子之和相等,则称该数为完数”, 6123,则6就是个完数,200500之间所有的完数之和。
Private Sub Form_Click() Dim i%, j%, s As Long, m As Long s = 0 FontSize = 14: FontBold = True For i = 200 To 500 m = 0 For j = 1 To i - 1 If i Mod j = 0 Then ________________ End If Next j If i = m Then s = s + i Next i Print s End Sub
496
404
已知一个数列的前3项为001,从第4项开始,每项为前3项的和,编程求此数列的第36个数。
Private Sub Form_Click() Dim i%, f0&, f1&, f2&, f3& FontSize = 14: FontBold = True f0 = 0 f1 = 0 f2 = 1 For i = 4 To 36 ________________ f0 = f1 f1 = f2 f2 = f3 Next i Print f3 End Sub
334745777
405
一个数如果刚好与它所有的因子之和相等,则称该数为完数”,61+2+3,则6就是个完数。编程求[8000,9000]之间完数的个数。
Private Sub Form_Click() Dim i%, j%, s As Long, m As Long s = 0 FontSize = 14: FontBold = True For i = 8000 To 9000 m = 0 For j = 1 To i - 1 If i Mod j = 0 Then ________________ End If Next j If i = m Then s = s + 1 End If Next i Print s End Sub
1
406
编程计算在[100,500]的范围内有多少这样的个数:其每位数字的乘积大于它的每位数字之和。(如数字232×3>2+3)
Private Sub Form_Click() Dim i%, a%, b%, m% m = 0 FontSize = 14: FontBold = True For i = 100 To 500 a = Int(i / 10) b = ________________ If a * b > a + b Then m = m + 1 Next i Print m End Sub
320
407
编写程序,求108887之间的所有素数的个数。
Private Sub Command1_Click() Dim x As Long, Number, i As Integer FontSize = 14: FontBold = True Number = 0 For x = 11 To 8887 Step 2 i = 2: k = Int(x / 2) Do While i <= k If x Mod i = 0 Then Exit Do i = i + 1 Loop If ________________ Then Number = Number + 1 End If Next x Print Number End Sub
1103
408
国古代数学家在《算经》中出了一道题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、母、雏各几何?意为公鸡5吊钱1只,母鸡 3吊钱1只,3只小鸡值1吊钱。编程实现用100吊钱买100只鸡,公鸡、母鸡、小鸡每种鸡至少一只,有多少种买法?
Private Sub command1_Click() Dim a%, b%, c%, s% FontSize = 14: FontBold = True Print: Print: Print s = 0 For a = 1 To 20 For b = 1 To 34 ________________ If 5 * a + 3 * b + c / 3 = 100 Then s = s + 1 Next b Next a Print s End Sub
3
409
Fibonacci数列的前几个数为:011235,其规律是: F1 0 n = 1) F2 1 n = 2 Fn Fn-1Fn-2 (n ≥ 3)编程求此数列的前30项之和。
Private Sub Command1_Click() Dim f, lastf, prevf, sum& Dim n As Integer sum = 1: prevf = 0: lastf = 1 n = 3 Do While n <= 30 ________________ sum = sum + f prevf = lastf lastf = f n = n + 1 Loop FontSize = 14: FontBold = True Print sum End Sub
1346268
410
Fibonacci数列的前几个数为:011235,其规律是: F1 0 n = 1) F2 1 n = 2 Fn Fn-1Fn-2 (n ≥ 3) 编程求此数列的前40项之和。
Private Sub Command1_Click() Dim f, lastf, prevf, sum& Dim n As Integer sum = 1: prevf = 0: lastf = 1 n = 3 Do While n <= 40 ________________ sum = sum + f prevf = lastf lastf = f n = n + 1 Loop FontSize = 14: FontBold = True Print sum End Sub
165580140
411
某人想将手中的一张面值100元的人民币换成5元、1元和0.5元面值的票子100张,且要求每种至少1张。求换法的种数。
Private Sub cmdExchangeRMB_Click() Dim i, j As Integer, RMBsum As Single RMBsum = 0 For i = 1 To 11 For j = 1 To 100 - i If ________________ Then RMBsum = RMBsum + 1 Next j, i FontSize = 14: FontBold = True Print RMBsum End Sub
11
412
四位平方数:千位、百位数相同,十位、个位数相同,且是某一个二位数的平方,求四位平方数的个数。
Private Sub Command1_Click() N=0 For a = 0 To 9 For b = 0 To 9 For i = 10 To 99 ________________ If m = i * i Then n=n+1 Next i Next b Next a Printf n End Sub
1
413
1/2+2/3+3/5+5/8+……的前1000项的和。注:该数列从第二项开始,其分子等于前一项的分母,而其分母等于前一项分子与分母之和。要求:按四舍五入的方式精确到小数点后第二位。
Private Sub Command1_Click() fz = 1 fm = 2 s = fz / fm For i = 2 To 1000 ________________ t = fz fz = fm fm = fm + t Next i Print Round(s, 2) End Sub
617.95
414
要将一张100元的大钞票,换成等值的10元、5元、2元和1元一张的小钞票。要求每次换成40张小钞票,每种至少一张。编程求有多少种换法。
Private Sub Command1_Click() Dim i, j, k, m As Integer Dim RMBsum As Integer FontSize = 14: FontBold = True For i = 1 To 9 For j = 1 To 17 For k = 1 To 37 m = 40 - i - j - k If ________________ Then RMBsum = RMBsum + 1 Next k, j, i Print RMBsum End Sub
34
415
从键盘输入两个数5121131484131421,利用辗转相除法求它们的最大公约数。求需要经过多少次辗转。
Private Sub cmdGreatestCommonDivsion_Click() Dim m, n, r, t As Single, count% m = Val(InputBox("请输入第一个数:")) n = Val(InputBox("请输入第二个数:")) FontSize = 14: FontBold = True If m < n Then t = m: m = n: n = t count = 0 Do ________________ m = n n = r count = count + 1 Loop Until r = 0 Print count End Sub
18
416
高次方程尾数的问题:求13298次方的最后三位数是多少?编程实现之。
Private Sub cmdMantissa_Click() Dim i, x, y, last As Long y = 298: x = 13 last = 1 FontSize = 14: FontBold = True For i = 1 To y last = last * x last=last Mod 1000 Next i Print last Mod ________________ End Sub
929
417
以下程序的功能是求:在[100999]范围内同时满足以下两个条件的十进制数的个数。其个位数字与十位数字之和除以10所得的余数是百位数字;该数是素数。
Private Sub Command1_Click() n = 0 For i = 100 To 999 If prime(i) = True Then g = i Mod 10 s = i \ 10 Mod 10 b = i \ 100 If (g + s) Mod 10 = b Then n = n + 1 End If Next i Print n End Sub Private Function prime(x) As Boolean p = x \ 2 For i = 2 To p If x Mod i = 0 Then prime = False Exit For End If Next i If i > p Then ________________ End Function
15
418
4位反序数:设N是一个四位数,它的9倍恰好是其反序数,求N(反序数就是将整数的数字倒过来形成的整数,如1234的反序数是4321)
Private Sub cmdAgainstOrdinalNumber_Click() Dim d1, d2, d3, d4, d, i As Integer FontSize = 14: FontBold = True For i = 1000 To 1111 d1 = i Mod 10 d2 = (i \ 10) Mod 10 d3 = (i \ 100) Mod 10 d4 = i \ 1000 ________________ If d = i * 9 Then Print i Next i End Sub
1089
419
算年龄:用爷爷的年龄的5倍加6得的和,再乘以20,再加上奶奶的年龄,再减去365,得数为6924,又知爷爷比奶奶大2岁。求爷爷、奶奶的年龄的和。
Private Sub Form_Click() For a = 1 To 200 For b = 1 To 200 If ________________________________ Then Print a + b End If Next b Next a End Sub
140
420
已知248个正整数因子(即:1234681224),而24正好能被其因子数8整除,求[10100]之间有多少个整数能被其因子的个数整除。
Private Sub Command1_Click() m = 0 For i = 10 To 100 n = 1 For j = 2 To i If i Mod j = 0 Then n = n + 1 End If Next j If ________________ Then m = m + 1 End If Next i Print m End Sub
12
421
所谓回文数是从左至右与从右至左读起来都是一样的数字,如:181是一个回文数。编程求出100968之间的所有回文数的个数。
Private Sub cmdPalindromeNumbere_Click() Dim i%, a%, b%, m% FontSize = 14: FontBold = True For i = 100 To 968 a = ________________ b = i Mod 10 If a = b Then m = m + 1 Next i Print m End Sub
86
422
编程序求四位数的奇数中,所有各位数字之积(且不为0)是600的倍数的数之和。
Private Sub Command1_Click() sum = 0 For i = 1001 To 9999 Step 2 d1 = i Mod 10 d2 = (i \ 10) Mod 10 d3 = (i \ 100) Mod 10 d4 = i \ 1000 d = d1 * d2 * d3 * d4 If ________________ Then sum = sum + i Next i Print sum End Sub
199956
423
编程序求四位数的偶数中,所有各位数字之积(且不为0)是60的倍数的数之和。
Private Sub Command1_Click() sum = 0 For i = 1000 To 9999 Step 2 d1 = i Mod 10 d2 = (i \ 10) Mod 10 d3 = (i \ 100) Mod 10 d4 = i \ 1000 d = d1 * d2 * d3 * d4 If ________________Then sum = sum + i Next i Print sum End Sub
2832006
424
金星和地球在某一时刻相对于太阳处于某一确定位置,已知金星绕太阳一周为225日,地球绕太阳一周为365日,问两个行星至少经过多少日仍同时回到原来的位置上?
Private Sub Form_Click() Dim m0&, n0& Dim m As Long Dim n As Long Dim r As Long m0 = 365 n0 = 225 m = m0 n = n0 r = m Mod n While ________________ m = n n = r r = m Mod n Wend Print m0 * n0 / n End Sub
16425
425
若两素数之差为2,则称两素数为双胞胎素数,编程求[200,1000]之间有多少对双胞胎素数。
Private Sub cmdTwinsPrime_Click() Dim k, prime, j, i, Count As Integer FontSize = 14: FontBold = True Print: Print: Print prime = 2 For i = 200 To 1000 k = Sqr(i) For j = 2 To k If i Mod j = 0 Then Exit For Next j If j > k Then If i - prime = 2 Then Count = Count + 1 ________________ End If Next i Print Count End Sub
20
426
水仙花数是指这样的数,其各位数字的立方和等于该数本身,如: 153=1^3+5^3+3^3。求100999的范围内水仙花数的个数。
Private Sub cmdDaffodilCount_Click() Dim i%, a%, b%, c%, count% FontSize = 14: FontBold = True count = 0 i = 100 Do a = i \ 100 b = (i - 100 * a) \ 10 c = i Mod 10 If i = a ^ 3 + b ^ 3 + c ^ 3 Then count = count + 1 End If i = i + 1 ________________ Print count End Sub
4
427
水仙花数是指这样的数,其各位数字的立方和等于该数本身,如: 153=1^3+5^3+3^3。求100999的范围内所有水仙花数之和。
Private Sub cmdDaffodilSum_Click() Dim i%, a%, b%, c%, sum% FontSize = 14: FontBold = True Print: Print: Print sum = 0 i = 100 Do a = i \ 100 b = i \ 10 Mod 10 c = i Mod 10 If i = a ^ 3 + b ^ 3 + c ^ 3 Then sum = sum + i End If i = i + 1 ________________ Print sum End Sub
1301
428
求三位数中,个位数字与十位数字之和除以10所得的余数是百位数字,且百位数字是偶数的数的个数。
Private Sub Form_click() Dim s As Integer Dim x As Integer Dim a As Integer Dim b As Integer Dim c As Integer s = 0 x = 100 Do While x <= 999 a = Int(x / 100) b = Int(x / 10) - a * 100 c = x - a * 100 - b * 10 If ______________________Then s = s + 1 x = x + 1 Loop Print s End Sub
40
429
求三位数中,个位数字与十位数字之和除以10所得的余数是百位数字,且百位数字是偶数的数的和。
Private Sub Form_click() Dim s As Integer Dim x As Integer Dim a As Integer Dim b As Integer Dim c As Integer s = 0 x = 100 Do While x <= 999 a = Int(x / 100) b = Int(x / 10) - a * 100 c = x - a * 100 - b * 10 If Then s = s + x x = x + 1 Loop Print s End Sub
21980
430
设某四位数的各位数字的平方和等于100,共有多少个这种四位数?
Private Sub cmdFourSqr_Click() Dim a, b, c, d, i, count As Integer count = 0 i = 1111 FontSize = 14: FontBold = True Print: Print: Print Do Until i > 9999 a = i \ 1000 b = (i Mod 1000) \ 100 c = ________________ d = i Mod 10 If 100 = a ^ 2 + b ^ 2 + c ^ 2 + d ^ 2 Then count = count + 1 i = i + 1 Loop Print count End Sub
49
431
统计[521,8421]之间有多少个这样的整数,其各位数字之和能被7整除。
Private Sub cmdEveryNumCount_Click() Dim count As Integer count = 0 FontSize = 14: FontBold = True For i = 521 To 8421 Select Case i Case 521 To 999 a = i \ 100 b = i \ 10 Mod 10 c = i Mod 10 If (a + b + c) Mod 7 = 0 Then count = count + 1 Case ________________ a = i \ 1000 b = i \ 100 Mod 10 c = i \ 10 Mod 10 d = i Mod 10 If (a + b + c + d) Mod 7 = 0 Then count = count + 1 End Select Next i Print count End Sub
1126
432
求方程5X-4Y=2,在|X|<=100,|Y|<=50内的整数解中|X|+|Y|最大值。
Private Sub Form_click() Max = 0 For x = -100 To 100 For y = -50 To 50 If 5 * x - 4 * y = 2 Then s = Abs(x) + Abs(y) ________________________________ End If Next y Next x Print Max End Sub
86
433
程序功能:求个位数是6,且能被3整除的五位数的个数。程序中有错误,改正错误,使程序能输出正确的结果。
Private Sub Command1_Click() Dim i% Dim m& i = 0 For m = 10000 To 99999 If m Mod 3 = 0 Or m Mod 10000 = 6 Then i = i + 1 End If Next m Print i
86
434
程序功能:求 [200,300]之间的有奇数个不同因子的最大整数。程序中有错误。改正错误,使它能输出正确的结果。
Private Sub Command1_Click() Dim x As Integer Dim i As Integer Dim n As Integer For x = 300 To 200 n = 0 For i = 1 To x If x Mod i = 0 Then n = n + 1 End If Next i If n / 2 <> 0 Then Print x Exit For End If Next x End Sub
289
已知248个正整数因子(即:1,2,3,4,6,8,12,24),而24正好被其因子个数8整除。求[1,100]之间第10个能被其因子数目整除的正整数。 56 2001