分数1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 求和

简介: 分数1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 求和

要求:计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值,打印出结果。

法一:

        从要求,我们可以看出,计算内容分为正数和负数。对他们求和,可以通过分别求和再相加。

#include<stdio.h>
int main()
{
  float sum1 = 0;
  float sum2 = 0;
  for (int i = 1; i <= 100; i = i + 2)
  {
    sum1 += 1.0 / i;
  }
  for (int i = 2; i <= 100; i = i + 2)
  {
    sum2 -= 1.0 / i;
  }
  printf("%f\n", sum1 + sum2);
  return 0;
}

法二:

       也可以通过flag,来决定分数的正负

#include<stdio.h>
int main()
{
  int flag = 1;
  float sum = 0;
  for (int i = 1; i <= 100; i++)
  {
    sum += flag * 1.0 / i;
    flag = -flag;
  }
  printf("%f", sum);
  return 0;
}


目录
相关文章
|
1月前
PTA-求分数序列的前n项和分数 20
求分数序列的前n项和分数 20
26 0
|
并行计算 算法 搜索推荐
Speccpu2017分数的一点介绍
对Spec2017的speed和rate分数做点介绍
3633 0
|
9天前
【P1035】级数求和
【P1035】级数求和
|
13天前
分数序列
【6月更文挑战第9天】分数序列。
16 5
|
10月前
wustojc3010快速求和
wustojc3010快速求和
39 0
|
11月前
1209:分数求和
1209:分数求和
|
11月前
|
数据库
tp5 某个字段相加、统计、最大值、最小值、平均值及总分
tp5 某个字段相加、统计、最大值、最小值、平均值及总分
|
机器学习/深度学习 Windows
1228 序列求和 (伯努利数)
1228 序列求和 (伯努利数)
69 0