For m = 1 To 1000 s = 0
For i = 1 To m - 1
If m Mod i = 0 Then s = s + i Next i
If s = m Then n = n + 1
If n = 2 Then Sum = m: Exit For Next m Print Sum
45 一个数如果恰好等于它的所有真因子之和,这个数就称为“完数”。例如,6的真因子为1,2,3,而6=1+2+3,因此,6是“完数”。求1000以内的所有完数之和。 530 Sum = 0
For m = 1 To 1000 s = 0
For i = 1 To m - 1
If m Mod i = 0 Then s = s + i Next i
If s = m Then Sum = Sum + m Next m Print Sum
46 求[200,300]之间有奇数个不同因子的最大的整数(在计算因子个数时,包括该数本身)。 289
For m = 200 To 300 k = 0
For i = 1 To m
If m Mod i = 0 Then k = k + 1 Next i
If k Mod 2 <> 0 Then A = m Next m Print A
47 求[200,300]之间第二大有奇数个不同因子的整数(在计算因子个数时,包括该数本身)。 256 n = 0
For m = 200 To 300 k = 0
For i = 1 To m
If m Mod i = 0 Then k = k + 1 Next i
If k Mod 2 <> 0 Then n = n + 1 If n = 2 Then A = m: Exit For Next m Print A
48 已知24有8个正整数因子(即:1,2,3,4,6,8,12,24),而24正好能被其因子数8
第 16 页
整除,求正整数[10,100]之间有多少个正整数能被其因子的个数整除。 n = 0
For m = 10 To 100 k = 0
For i = 1 To m
If m Mod i = 0 Then k = k + 1 Next i
If m Mod k = 0 Then n = n + 1 Next m Print n
6.(数列)四舍五入
49 当m的值为50时,计算下列公式的值: T=1-1/2-1/3-1/4-?-1/m 要求:按四舍五入的方式精确到小数点后第四位。 t = 1
For i = 2 To 50 t = t - 1 / i Next i
Print Round(t, 4)
50 当m的值为50时,计算下列公式之值: t=1+1/2^2+1/3^2+?+1/m^2 (按四舍五入的方式精确到小数点后第四位)。 t = 0
For i = 1 To 50 t = t + 1 / i ^ 2 Next i
Print Round(t, 4)
51 当n=100时,计算S=(1-1/2)+(1/3-1/4)+??+(1/(2n-1)-1/(2n))的值。. 要求:按四舍五入的方式精确到小数点后第三位。 s = 0
For i = 1 To 100
s = s + (1 / (2 * i - 1) - 1 / (2 * i)) Next i
Print Round(s, 3)
52 当n的值为25时,计算下列公式的值: s=1+1/1!+1/2!+1/3!+?+1/n! 要求:按四舍五入的方式精确到小数点后第四位。 s = 1 t = 1
For i = 1 To 50 t = t * i s = s + 1 / t Next i
第 17 页
12
-2.4992
1.6251
0.691
2.7183
Print Round(s, 4)
53 利用格里高利公式:α/4=1-1/3+1/5-1/7+1/9-1/11+?-1/99,求α的值。要求:按四舍五入的方式精确到小数点后第二位。 3.12 s = 0 a = 1
For i = 1 To 99 Step 2 s = s + 1 / i * a a = -a Next i
Print Round(s * 4, 2)
54 求1/(1*2)+1/(2*3)+1/(3*4)+....+1/(N*(N+1))的值,N=20, 要求:按四舍五入的方式精确到小数点后第二位。 0.95 s = 0
For i = 1 To 20
s = s + 1 / (i * (i + 1)) Next i
Print Round(s, 2)
55 求500以内(含500)能被5或9整除的所有自然数的倒数之和。按四舍五入的方式精确到小数点后第二位。 1.48 s = 0
For i = 1 To 500
If i Mod 5 = 0 Or i Mod 9 = 0 Then s = s + 1 / i End If Next i
Print Round(s, 2)
56 求S=1/2+2/3+3/5+5/8+??的前30项的和(注:该级数从第二项开始,其分子是前一项的分母,其分母是前一项的分子与分母的和)。要求:按四舍五入的方式精确到小数点后第二位。 18.46 s = 0 a = 1 b = 2
For i = 1 To 30
s = s + a / b t = a a = b b = t + b Next i
Print Round(s, 2)
57 设S(n)=1-1/3+1/5-1/7+?1/(2n-1),求S(100)的值,要求S(100)按四舍五入方式精
第 18 页
确到小数点后4位。 0.7829 s = 0 a = 1
For i = 1 To 100
s = s + 1 / (2 * i - 1) * a a = -a Next i
Print Round(s, 4)
58 当n=50时,求下列级数和:S=1/(1*2)+1/(2*3)+?+1/(n*(n+1)) 要求:按四舍五入的方式精确到小数点后第四位。 0.9804 s = 0
For i = 1 To 50
s = s + 1 / (i * (i + 1)) Next i
Print Round(s, 4)
59 计算y=1+2/3+3/5+4/7+?+n/(2*n-1)的值, n=50, 要求:按四舍五入的方式精确到小数点后第二位。 26.47 s = 0
For i = 1 To 50
s = s + i / (2 * i - 1) Next i
Print Round(s, 2)
60 计算Y=X/1!-X^3/3!+X^5/5!-X^7/7!+??前20项的值(已知:X=2)。要求:按四舍五入的方式精确到小数点后第二位。 0.91 s = 0 x = 2 a = 1 t = 1
For i = 1 To 20 * 2 + 1 t = t * i
If i Mod 2 <> 0 Then s = s + x ^ i / t * a a = -a End If Next i
Print Round(s, 2)
61 求数列:2/1,3/2,5/3,8/5,13/8,21/13,?? 前50项之和(注:此数列从第二项开始,其分子是前一项的分子与分母之和,其分母是前一项的分子)。(按四舍五入的方式精确到小数点后第二位) 81.2 s = 0 a = 2 b = 1
第 19 页
For i = 1 To 50 s = s + a / b t = a a = a + b b = t Next i
Print Round(s, 2)
62 已知:A1=1, A2=1/(1+A1), A3=1/(1+A2), A4=1/(1+A3), ??, 求A50.(按四舍五入的方式精确到小数点后第三位)。 0.618 a = 1
For i = 2 To 50
a = 1 / (1 + a) Next i
Print Round(a, 3)
63 已知:Sn=2/1+3/2+4/3+?+(n+1)/n, 求Sn不超过50的最大值(按四舍五入的方式精确到小数点后第三位)。 49.395 s = 0 i = 1
Do While s < 50
t = (i + 1) / i s = s + t i = i + 1 Loop
Print Round(s - t, 3)
7.平方数
64 若一个四位正整数是另一个正整数的平方,且各位数字的和是一个平方数,则称该四位正整数是“四位双平方数”。例如: 由于7396=86^2,且7+3+9+6=25=5^2,则称7396是“四位双平方数”。求所有“四位双平方数”之和。 81977 s = 0
For i = 1000 To 9999 a = i \\ 1000
b = i \\ 100 Mod 10 c = i \\ 10 Mod 10 d = i Mod 10 x = Sqr(i)
y = Sqr(a + b + c + d)
If x = Int(x) And y = Int(y) Then s = s + i Next i Print s
65 自然数对是指两个自然数的和与差都是平方数,如8和17的和8+17=25与其差17-8=9
第 20 页