今日
闲来无事
算一道数学题吧
算一下这道初中的数学题
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;
}
是不是贼鸡儿简单??
诶~
好好学习
才能天天向上嘛
真的骚