对于计算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;
}