【题目描述】
编写程序,输入n的值,求1/1−1/2+1/3−1/4+1/5−1/6+1/7−1/8+…+(−1)^(n−1)⋅1/n的值。
【输入】
输入一个正整数n。1 ≤ n ≤ 1000。
【输出】
输出一个实数,为表达式的值,保留到小数点后四位。
【输入样例】
2
【输出样例】
0.5000
————————————————
思路:偶数项为负数,奇数项为正,判断是偶数项时加个负号。因为是小数 *1.0 转换成浮点型。
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int main()
{
double t = 0;
int n;
cin >> n;
for(int i = 1;i <= n;i++)
{
if(i % 2 == 0)//偶数项为负数
t -= 1.0 / i;
else
t += 1.0 / i; //奇数项为负数
}
printf("%.4lf",t);
return 0;
}