题解
2026-05-05 15:45:48
发布于:湖南
3阅读
0回复
0点赞
题意
输入一个整数 n,计算交替级数,最后输出结果,保留 8 位小数。
思路
1.输入:输入项数 n。
2.初始化:
f = 1.0:结果初始值
fact = 1:用于计算阶乘
3.循环计算:
每次循环先计算 i 的阶乘 fact *= i
当 i 是奇数:减去 1.0 / 阶乘
当 i 是偶数:加上 1.0 / 阶乘
4.输出:按格式输出,保留 8 位小数。
完整代码
#include <bits/stdc++.h>
using namespace std;
int main() {
int n;
cin >> n;
double f = 1.0;
long long fact = 1;
for (int i = 1; i <= n; ++i) {
fact *= i;
if (i % 2 == 1) f -= 1.0 / fact;
else f += 1.0 / fact;
}
cout << fixed << setprecision(8) << f << endl;
return 0;
}

这里空空如也








有帮助,赞一个