ZZULI 1042: 数列求和3

题目描述

求1-2/3+3/5-4/7+5/9-6/11+...的前n项和,结果保留3位小数。

输入

输入正整数n(n>0)。

输出

输出一个实数,保留3位小数,单独占一行。

样例输入 Copy

5

样例输出 Copy

0.917

来源/分类

** 

#include<stdio.h>

int main(void) 

{

 int i, n, deno;

 double sum, flag;

 scanf("%d", &n);

 

 sum = 0.0;

 deno = 1;

 flag = 1.0;

 /*循环n次,每次计算当前项,然后计算 下一项分母和符号,为下一次循环做准备*/ 

 for(i = 1; i <= n; i++)

 {

  sum += i*flag / deno;/*累加当前项*/ 

  deno += 2;/*分母加2,符号取反,为下次循环做准备*/ 

  flag = -flag;

 }

 

 printf("%.3f\n", sum);

 return 0;

}

 

posted @ 2020-11-25 11:20  文明sh  阅读(208)  评论(0)    收藏  举报