for语句编程java 已知s是无穷项的和,s=1+1/2+1/4+1/7+1/11+…,求s前100项的和。
时间: 2023-09-30 08:09:06 浏览: 75
求1+1/2+1/3+1/4+…….+1/100的值
可以使用for循环来计算s前100项的和,具体代码如下:
```java
double s = 0;
double denominator = 1; // 分母
for (int i = 1; i <= 100; i++) {
s += 1 / denominator; // 累加每一项的值
denominator += i * 2 + 1; // 更新分母
}
System.out.println("s前100项的和为:" + s);
```
解释一下代码:
- `s` 初值为0,表示累加的和;
- `denominator` 初值为1,表示当前项的分母;
- `for` 循环中,`i` 从1到100,表示当前是第几项;
- 每次循环中,先计算当前项的值(1/分母),并累加到 `s` 中;
- 然后根据规律,更新分母:第1项的分母为1,第2项的分母为1+2*1+1=4,第3项的分母为4+2*2+1=9,依此类推;
- 循环结束后,输出 `s` 的值即为前100项的和。
注意,因为 `s` 是浮点数类型,所以要使用 `double` 类型。另外,除数不能为0,所以分母不能为0。
阅读全文