计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值

本文介绍两种计算交错级数1/1-1/2+1/3-...-1/100的算法。一种使用for循环结合pow函数进行加减符号转换,另一种使用while循环与变量乘法实现。两种方法均采用double类型存储中间结果,最终输出计算结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

   对于计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值的问题,从个方面设计解决方案,下面为具体的算法分析及程序。

算法一:
首先使用浮点型(double)定义一个sum变量,调用for函数实现此问题,使用pow函数进行加减符号的转换,将最后计算得到的结果赋给sum,最后再对sum进行输出

#include <stdio.h>
#include <math.h>

int main(){
  double sum=0.0;
  for(int i=1;i<=100;i++){
    sum+=1.0/i*pow(-1,i+1);
  }
  printf("%lf\n",sum);
  return 0;
}

算法二:
首先使用浮点型(double)定义一个sum变量,调用while函数实现此问题,定义整型变量t,初始化为-1,通过变量t与-1相乘从而进行加减符号的转换,将最后计算得到的结果赋给sum,最后再对sum进行输出

#include <stdio.h>

int main(){
  int i=1;
  double t=-1.0,sum=0.0;
  while(i<=100){
    t*=-1.0;
    sum+=1.0/i*t;
    i++;
  }
  printf("%lf\n",sum);
  return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值