循环一个级数
looping for a series
我有一个问题:
编写程序显示1+1/2+2/3+3/4+…+(n-1)/n(使用for循环).
我没有很好地理解这个系列,如果n = 6请为我解释一下。(无需编码)。
n = 6,你需要计算1 + (1/2)+ (2/3)+ (3/4)+ (4/5)+ (5/6)
问题要求您填写以下程序的详细信息:
sum = 0;
for (int i=1; i<=n; ++i) {
sum += ???
}
return sum;
在哪里? ?应该为您提供以下值:
i | ???
-------
1 | 1
2 | 1/2
3 | 2/3
4 | 3/4
5 | 4/5
6 | 5/6
.
.
.
n | (n-1)/n
很简单。最大的提示是第n项本身:(n-1)/n
除了第一项之外,其他每一项都可以用(i-1)/i
形式的表达式表示,这意味着算法可以归结为:
double sum = 1.0; //first term
for(int i = 2 ; i <= n ; ++i) //2nd to nth term!
sum += (i-1.0)/i;
为什么我写(i-1.0)
而不是(i-1)
?
您需要自己弄清楚,因为我已经解释并编写了几乎整个代码。
编写一个循环,对n
的每个值计算(n-1)/n
,并将结果添加到某个变量中。"某个变量"就是答案。
Set n=6
级数的最后一项也可以写成n / (n + 1)
,其中n
是一个迭代的值
相关文章:
- 使用一个循环与两个循环
- 如何通过一个循环将多个文件的内容分配给不同的类属性?
- 我对C++很陌生,我被困在试图做一个循环
- 该程序没有产生输出,而是卡在一个循环中,几秒钟后消失并打印被杀死?
- 有没有办法把它变成一个循环,让它更具包容性?
- 是否可以在一个循环中写入多个二进制文件
- C++在最后一个循环中排除了部分循环运算符
- 是否可以为一个循环设置多个条件
- 创建一个循环,该循环将输出大于零且小于 60(不包括 60)的所有 5 的倍数
- 如何创建一个循环,该循环检查每次迭代并在每次迭代后从头开始
- 如何在一个循环中分离两个不同的数组?
- 为什么这个do-while循环每隔一个循环只写入数组?
- 我在 c ++ 中有一个循环错误
- C :使用文件末端(CTRL Z)结束一个循环似乎打破了我程序的其余部分
- 如何将枯竭的健康转移到下一个循环中
- 一个循环,可以打印所有项目(无论链条多长时间) *指针
- 在 GtkDialog 中创建一个循环
- 我可以做一个循环,直到“std::cin”在输入缓冲区中看到“”字符
- 一个线程设置成员,而另一个循环上方 - 是此螺纹 - 不安全
- 编写一个循环,以检查变量的值与大量可能的有效值(C )的值