VFP编程问题,小问题

来源:百度知道 编辑:UC知道 时间:2024/05/14 19:42:41
有个这样的题,编程求S=1*1!+2*2!+........+10*10!
我是这样写的
clear
set talk off
p=1
s=0
n=3
do while n<=10
for i=1 to n
p=p*i
s=s+p*n
next
enddo
?s
这样不行,但是不知道哪里有问题,请告诉,谢谢!

1、s=s+p*n 应该在FOR循环之外。FOR循环是计算N!,计算完N!才求和。
2、p的值在计算完一次N!后,应恢复为1
3、在DO WHILE循环里,n的值没有变化,条件永远满足,是个死循环。

其实用两上FOR语句更容易理解。

clear
set talk off
p=1
s=0
n=0

for n=1 to 10
for i=1 to n
p=p*i
next
s=s+p*n
p=1
next

? s