当前位置:文档之家› VF编程题一

VF编程题一

一级VF程序设计题库及答案

2 编程序求1~99的平方根的和并输出结果。(保留小数点两位) 661.46
clear
s=0
for i=1 to 99
s=s+sqrt(i)
endfor
?round(s,2)
7 编程序求出1到5000之间的能被5整除的前若干个偶数之和,当和大于500 时程序退出。 550
clear
s=0
for n=10 to 5000 step 10
s=s+n
if s>500
exit
endif
endfor
?s
12 已知一个数列的前3个数为0,0,1,以后每个数为前3个数的和,编程序求此数列的第36个数。 334745777
clear
dime f(36)
f(1)=0
f(2)=0
f(3)=1
s=0
for n=4 to 36
f(n)=f(n-3)+f(n-2)+f(n-1)
s=f(n)
endfor
?s
20 编程序求出1-5000以内能被37整除的整数之和。 339660
clear
s=0
for n=1 to 5000
if n%37=0
s=s+n
endif
endfor
?s
24 编程序求出100到200之间同时满足除3余2和除5余3条件的数的个数。 6
clear
s=0
for n=100 to 200
if n%3=2 and n%5=3
s=s+1
endif
endfor
?s
30 编程序求出 2+4+8+16+32+…这样的数之和。如果累加数大于500时,则程序终止并输出结果。 510
clear
s=0
for n=1 to 100
s=s+2^n
if s>500
exit
endif
endfor
?s
31 编程序求出1~100所有整数的立方和并输出结果。 25502500
clear
s=0
for n=1 to 100
s=s+n^3
endfor
?s
39 编写程序,计算1000以内有多少个这样的数,该数既能被6整除又能被8整除。 41
clear
s=0
for n=1 to 1000
if n%6=0 and n%8=0
s=s+1
endif
endfor 注:若是“或”,则用“or”。
?s
50 编程序求出1到5000之间的能被7整除的前若干个数之和,当和大于1500时退出 并输出结果。 1617
clear
s=0
for n=1 to 5000
if n%7=0
s=s+n
endif
if s>1500
exit
endif
endfor
?s
92 编程序求1+3+5+7+9+…这样的数之和。如果累加数大于900时,则程序终止并输出结果。 961
clea
s=0
for n=1 to 800 step 2
s=s+n
if s>900
exit
endif
endfor
?s
100编写程序,求[1,500]既能被6整除又能被7整除的数之和。 2772
clea
s=0
for n=1 to 500
if n%6=0 and n%7=0
s=s+n
endif
endfor
?s
103求[351,432]之间所有既不能被3整除,又不能被8整除的正整数的个数。 47
clea
s=0
for n=351 to 432
if n%3!=0 and n%8!=0
s=s+1
endif
endfor
?s
1
150求[1,1000]之间能被3整除,且至少有一位上的数是5的所有数之和。 46509
clea
s=0
for n=15 to 1000 step 3
do case
case n<100
a=int(n/10)
b=n%10
if a=5 or b=5
s=s+n
endif
case n<1000
c=int(n/100)
d=int(n/10)%10
e=n%10
if c=5 or d=5 or e=5
s=s+n
endif
endcase
endfor
?s
182 统计[100,10000]之间有多少个这样的整数,其各位数字之和能被7整除 1408
clea
s=0
q=0
for n=100 to 10000
do case
case n<1000
a=int(n/100)
b=int(n/10)%10
c=n%10
q=a+b+c
case n<10000
d=int(n/1000)
e=int(n/100)%10
f=int(n/10)%10
g=n

%10
q=d+e+f+g
endcase
if q%7=0
s=s+1
endif
endfor
?s
191某一正整数,进行递减,第一次减去该数的一半再减一,以后每次都减去前一次剩下的数后再减一,直到第十次减后,剩1。求该数。 1534
clea
dime f(10)
f(1)=1
f(2)=4
f(3)=10
s=0
for n=4 to 10
f(n)=2*f(n-1)+2
s=f(n)
endfor
?s
197求[351,432]之间所有能被3整除,但不能被8整除的整数的个数。 24
clea
s=0
for n=351 to 432
if n%3=0 and n%8!=0
s=s+1
endif
endfor
?s
198 求[351,432]之间所有能被3整除,但不能被8整除的整数的和。 9378
clea
s=0
for n=351 to 432
if n%3=0 and n%8!=0
s=s+n
endif
endfor
?s
245 当k值为20时,求S的值。 s=(1^2/(1*3))*(4^2/(3*5))*(6^2/(5*7))*…*(2k)^2/((2k-1)(2k+1)) (按四舍五入的方式精确到小数点后第三位) 1.552
clea
dime f(20)
f(1)=4/3
f(2)=16/15
f(3)=36/35
s=1
for n=1 to 20
f(n)=(2*n)^2/((2*n-1)*(2*n+1))
s=s*f(n)
endfor
?round(s,3)
105 有一个分数序列:2/1,3/2,5/3,8/5,13/8,21/13....(注:该数列从第二项开始,其分子是前一项的分子与分母的和,而其分母是前一项的分子),求出这个序列前24项的和。要求:按四舍五入的方式精确到小数点后第二位。 39.13
clea
s=0
k=0
m=2
n=1
for j=1 to 24
k=m/n
s=s+k
y=m
m=m+n
n=y
endfor
?round(s,2)
193已知S1=1,S2=1+2,S3=1+2+3…,SN=1+2+…n,求S20到S80之间有多少个数能被17或35整除。 12
clea
dime f(80)
f(1)=1
f(2)=3
f(3)=6
s=0
k=0
for n=4 to 80
f(n)=f(n-1)+n
k=k+1
if k>=16 and (f(n)%17=0 or f(n)%35=0) &&一定要记得给“f(n)%17=0 or f(n)%35=0”加上括号
s=s+1 &&因为“f(n)%17=0 or f(n)%35=0”与 “k>=16”要同时满足。
endif
endfor
?s
135 求数学式1-1/2+1/3-1/4+1/5-1/6+…+1/99-1/100的值 (按四舍五入方式精确到小数点后4位) 0.6882
clea
dime f(50)
f(1)=1-1/2
f(2)=1/3-1/4
f(3)=1/5-1/6
s=0
for n=1 to 50
f(n)=1/(2*n-1)-1/(2*n)
s=s+f(n)
endfor
?round(s,4)
184 S1=1,S2=1+3,S3=1+3+5,S4=1+3+5+7,…,SN=1+3+5+7+…+(2N-1),N为正整数。编程求S1+S2+S3+S4+…+SN的值<20000时的N的最大值。 38
clea
dime f(10000)
f(1)=1
f(2)=3
f(3)=5
s=0
q=0
for n=1 to 10000
f(n)=2*n-1
s=s+f(n)
q=q+s
if q>20000
exit
endif
endfor
?n-1
147 计算y=1+2/3+3/5+4/7+…+n/(2*n-1)(n=50), 要求:按四舍五入的方式精确到小数点后第二位。 26.47
clea
dime f(50)
f(1)=1
f(2)=2/3
f(3)=3/5
s=0
for n=1 to 50
f(n)=n/(2*n-1)
s=s+f(n)
endfor
?round(s,2)
151当m的值为50时,计算下列公式之值:t=1-1/(2*2)-1/(3*3)-…-1/(m*m) 要求:按四舍五入的方式精确到小数点后第四位。 0.3749
clea
dime f(50)
f(2)=-1/4
f(3)=-1/9
f(4)=-1/16
s=1
for n=2 to 50
f(n)=-1/(n*n)
s=s+f(n)
endfor
?round(s,4)
154 (1^2/(1*3))+(4^2

/(3*5))+(6^2/(5*7))+…+(2k)^2/((2k-1)*(2k+1)) (按四舍五入的方式精确到小数点后第三位) 20.488
clea
dime f(20)
f(1)=4/3
f(2)=16/15
f(3)=36/35
s=0
for n=1 to 20
f(n)=(2*n)^2/((2*n-1)*(2*n+1))
s=s+f(n)
endfor
?round(s,3)
155求级数1/(1*2)+1/(2*3)+.....+1/(N*(N+1))的和的近似值,直到级数中有一项的值小于1E-4为止. 要求:按四舍五入的方式精确到小数点后第二位。 0.99
clea
s=0
for n=1 to 100000
k=1/(n*(n+1)) &&一定要记得分母是多项相乘时,分母要加括号!!
s=s+k
if k<1/10000
exit
endif
endfor
?round(s,2)
161 当n=100时,计算输出下列多项式的值 S=(1-1/2)+(1/3-1/4)+……+(1/(2*n-1)-1/(2*n)) 按四舍五入的方式精确到小数点后第三位。 0.691
clea
dime f(100)
f(1)=1/2
f(2)=1/12
f(3)=1/30
s=0
for n=1 to 100
f(n)=1/(2*n-1)-1/(2*n)
s=s+f(n)
endfor
?round(s,3)
178利用格里高利公式:α/4=1-1/3+1/5-1/7+1/9-1/11+…-1/99,求α的值。要求:按四舍五入的方式精确到小数点后第二位。 3.13
clea
dime f(50)
f(1)=1-1/3
f(2)=1/5-1/7
f(3)=1/7-1/11
a=0
for n=1 to 50
f(n)=1/(4*n-3)-1/(4*n-1)
a=a+f(n)
endfor
?round(4*a,2)
162当n的值为25时,计算下列公式的值 s=1+1/1!+1/2!+1/3!+…+1/n! 要求:按四舍五入的方式精确到小数点后第四位。 2.7183
clea
dime f(25)
f(1)=1
f(2)=1/2
f(3)=1/6
s=1
for n=1 to 25
p=1
for j=1 to n
p=p*j
f(n)=1/p
endfor
s=s+f(n) && s的初值在第一个for的前面,绝对不要进入第二个for循环
endfor
?round(s,4)
157 已知S1=1, S2=1+2, S3=1+2+4, S4=1+2+4+8,S5=1+2+4+8+16,…,编制一个程序求S=S1+S2+S3+S4+S5+…+S20的值。 2097130
clea
s=0
q=0
for n=0 to 19
w=2^n
q=q+w
s=s+q
endfor
?s
252 当n=100时,计算输出下列多项式的值 S=(1-1/2)+(1/3-1/4)+……+(1/(2n-1)-1/(2n)) 按四舍五入的方式精确到小数点后第三位。 0.688
clea
dime f(50)
f(1)=1-1/2
f(2)=1/3-1/4
f(3)=1/5-1/6
s=0
for n=1 to 50
f(n)=1/(2*n-1)-1/(2*n)
s=s+f(n)
endfor
?round(s,3)
163 当n的值为50时,求S的值。 S=1+1/(1+2)+1/(1+2+3)+…+1/(1+2+3+…+N) 要求:按四舍五入的方式精确到小数点后第四位。 1.9608
clea
dime f(50)
f(1)=1
f(2)=3
f(3)=6
s=0
k=0
for n=1 to 50
k=k+n
f(n)=1/k
s=s+f(n)
endfor
?round(s,4)

相关主题
相关文档 最新文档