史上最全计算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

瞄一眼

感觉这道题大概有三种算法

哈哈哈哈

不要问我怎么知道的

先来个分解法

把加的合到一起算 减的合到一起算

奇数偶数分开计算

到最后一减就ok了

#include <stdio.h>//拆分法
int main()
{
int i=0,j=0;
double sum =1.0,sum1=0.0,sum2=0.0;
for (i=1;i<99;i=i+2)
{
sum1=sum1+1.0/i;//分母为奇数项之和
}
for (j=2;j<100;j=j+2)
{
	sum2=sum2+1.0/j;//分母为偶数项之和
}
sum=sum1-sum2;
printf("%f\n",sum);
return 0;
}

上面这种方法呢

有一些小朋友了

最近才学了一点点

for while

用一下吧

先用for语句写一下

#include <stdio.h>
int main()
{
	int i=0;
	int sign=1;
	double sum=1.0;
	for (i=2;i<100;i++)
	{
	sign=-sign;
	sum=sum+sign*1.0/i;//注意1.0如果打成1会导致强制类型转换 最后结果就不正确了
	}
	printf("%lf \n",sum);
return 0;
}

while语句再走一手

道理还是一样的

用循环控制正负

#include <stdio.h>
int main()
{
	int sign=1;
	double sum=1.0;
	double deno=2.0;
	while (deno<=100)
	{
		sign=-sign;
		sum =sum+sign*1.0/deno;
		deno++;
	}
	printf("%lf \n",sum);
	return 0;
}

是不是贼鸡儿简单??

诶~

好好学习

才能天天向上嘛

真的骚

  • 7
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值