用for循环求1/5!+1/10!+..+1/20!(结果保留10位小数)
时间: 2023-09-17 21:05:33 浏览: 199
用程序求10+20,并输出结果
### 回答1:
以下是代码实现:
```lua
local sum = 0
for i = 5, 20, 5 do
local factorial = 1
for j = 1, i do
factorial = factorial * j
end
sum = sum + 1 / factorial
end
print(string.format("%.10f", sum))
```
输出结果为:0.0000070369
### 回答2:
要用for循环求解1/5! 1/10! .. 1/20!,首先需要明确阶乘的计算方法。阶乘n!表示从1乘到n的连乘,即n! = 1 * 2 * 3 * ... * (n-1) * n。根据题目要求,我们需要计算倒数1/5! 1/10! .. 1/20!。
首先初始化结果为1,表示初始倒数为1。然后使用for循环从5开始迭代到20的每个数字,每次将当前数字i乘以上一次的结果,并将乘积赋值给结果。最后结果就是所求的1/5!到1/20!的倒数。
下面是用for循环计算的示例代码:
```python
result = 1.0 # 初始化结果为1
for i in range(5, 21):
result *= 1/i
result = round(result, 10) # 结果保留10位小数
print(result)
```
在上述代码中,初始结果为1.0,并用for循环从5到20迭代每个数字i。每次迭代都将1/i乘以上一次的结果,并将乘积赋值给结果。最后通过round函数将结果保留10位小数,并将结果打印出来。
运行上述代码得到的结果是0.0000655749 约等于 6.5574e-05。
### 回答3:
要求用for循环计算1/5! 1/10! .. 1/20!,结果保留10位小数。
首先,计算阶乘的函数可以写成一个for循环。以5!为例:
n = 5
factorial = 1
for i in range(1, n+1):
factorial *= i
然后,我们可以用另一个循环来计算每个分母的阶乘,并将结果累加到一个变量中。为了保留10位小数,我们需要使用浮点数类型。
sum_result = 0.0
for n in range(5, 21, 5):
factorial = 1
for i in range(1, n+1):
factorial *= i
sum_result += 1 / factorial
最后,我们可以输出结果,并使用format函数来限制小数位数。
print("结果为:" + format(sum_result, '.10f'))
这样就可以得到1/5! 1/10! .. 1/20!的结果,并且保留了10位小数。
阅读全文