c++编程计算S=1+1/3+1/5+……+1/99
时间: 2023-11-16 17:06:08 浏览: 153
```c++
#include <iostream>
using namespace std;
int main() {
float s = 0;
for (int i = 1; i <= 99; i += 2) {
s += 1.0 / i;
}
cout << s << endl;
return 0;
}
// 输出结果为:1.56904
```
--相关问题--:
1. 如何计算S=1+1/2+1/3+……+1/n?
2
相关问题
用c++ 写出 编程计算1+(1+3+5)+(1+3+5+7)+…………+(1+3+5+7+……+(2*n-1))
以下是使用 C++ 编写的程序,实现计算 1+(1+3+5)+(1+3+5+7)+...+(1+3+5+7+...+(2*n-1)) 的功能:
```c++
#include <iostream>
using namespace std;
int main() {
int n, sum = 0, i, j;
cin >> n; // 输入 n 的值
for (i = 1; i <= n; i++) { // 外层循环控制求和的次数
int temp = 0; // 定义一个临时变量,用于保存每次内层循环求和的结果
for (j = 1; j <= 2 * i - 1; j += 2) { // 内层循环求每次的和
temp += j;
}
sum += temp; // 将每次的和加到总和上
}
cout << sum + n << endl; // 输出最终结果
return 0;
}
```
程序执行时,先要输入 n 的值,然后程序会依次计算出 1+(1+3+5)+(1+3+5+7)+...+(1+3+5+7+...+(2*n-1)) 的结果,并将结果输出。
请用c++编程:问题:读入n,计算S=1-1/2+1/3-1/4+1/5-1/6+…… 1/n的值。顶格输出,保留小数点后10位。 输入样例: 6 输出样例: 0.6166666667 数据规模 1<= n <=100
以下是用C++编写的程序:
```cpp
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
int n;
cin >> n;
double sum = 1.0;
int flag = -1;
for (int i = 2; i <= n; i++) {
sum += flag * 1.0 / i;
flag = -flag;
}
cout << fixed << setprecision(10) << sum << endl;
return 0;
}
```
程序首先读入n,然后定义一个double类型的变量sum,并初始化为1.0,因为第一项是1。接着定义一个flag变量,用来记录正负号,初始化为-1。然后从i=2开始循环,每次加上flag乘以1/i的值,并将flag取反。最后输出sum的值,保留小数点后10位。