C ++程序找到1/1系列的总和!+ 2/2!+ 3/3!+ 4/4!+……n / n!
在这里,我们将看到如何获取给定序列的总和。n的值将由用户给出。我们可以通过创建阶乘函数来解决此问题,并在循环的每个步骤中获得阶乘。但是阶乘计算是比正常加法更昂贵的任务。我们将在下一个中使用上一个析因项。像3!是(3*2*1)和4!是4*3!。因此,如果我们存储3个!我们可以使用它并添加下一个数字,以便轻松获得下一个阶乘。
算法
sum_series_fact(n)
begin
res := 0
denominator := 1
for i in range 1 to n, do
denominator := denominator * i
res := res + i / denominator
done
return res
end示例
#include<iostream>
using namespace std;
float series_result(int n) {
float denominator = 1;
float res = 0;
for(int i = 1; i<= n; i++) {
denominator *= i;
res += float(i/denominator);
}
return res;
}
main() {
int n;
cout << "Enter number of terms: ";
cin >> n;
cout << "Result: " << series_result(n);
}输出结果
Enter number of terms: 5 Result: 2.70833
输出结果
Enter number of terms: 3 Result: 2.5
热门推荐
1 如何训练狗狗不叫
2 训练狗狗不叫
3 训练狗狗随行
4 怎么训练狗狗不叫
7 训练比熊狗狗教程
10 上海狗狗训练
11 怎么训练狗狗上厕所
12 训练狗狗趴下
13 狗狗服从训练
14 训练狗狗拒食
15 训练狗狗笑
16 训练狗狗大便
17 训练狗狗立
18 训练狗狗捡东西