问问题了!想了好久还是没想通!
问题:求1-1/2+1/3-1/4+...+1/99-1/100?算法可以表示如下:
S1:sign=1
S2:sum=1
S3:deno=2
S4:sign=(-1)*sign
S5:term=sign*(1/deno)
S6:sum=sum+term
S7:deno=deno+1
S8:若deno≤100返回S4;否则算法结束.
我想了好久,因为题目是一次负,再一次正.那S4表示的是sign可以是正也可以是负.那电脑怎么判断它什么时候是正什么时候是负呢?我搞不懂的是返回S4时,电脑是怎么选择sign是正还是负的.因为他的步骤好像没有说啊!对吧?
如果不用写sign什么时候是正什么时候是负的话.那题目是1+1/2+1/3+1/4+...+1/99+1/100的话,那不是也可以用以上的那个表达式来表达了???
----------------解决方案--------------------------------------------------------
干嘛搞那么麻烦
算了,我把两种题目的答案给你 你自己对比一下吧
首先 题目 【1+1/2+1/3+1/4+...+1/99+1/100?】
程序如下:
main()
{
int i=2;
float sum=1.0;
while(i<=100)
{
sum+=1/i*1.0;
i++;
}
printf(("sum=%f\n",sum);
}
题目 【1-1/2+1/3-1/4+...+1/99-1/100?】
程序如下:
main()
{
int i=2;
float sum=1.0;
while(i<=100)
{
if(i%2!=0)
{
sum+=1/i*1.0;
i++;
}
else
{
sum-=1/i*1.0;
i++;
}
}
printf(("sum=%f\n",sum);
}
----------------解决方案--------------------------------------------------------
我是初学者!你写的有些都看不懂啦!只要帮我解释一下我说的那个问题就好了!谢谢!
----------------解决方案--------------------------------------------------------
S4:sign=(-1)*sign
这里表示的是-1的sign次方 所以单数项为负,偶数项为正
----------------解决方案--------------------------------------------------------
原来是这个意思啊?那个"*"号就应该是在数字的上面呀!可是书上写的就是在中间,那就是乘以吧?难道是书上写错啦?还是编程里就是这样表达的呀?
----------------解决方案--------------------------------------------------------
1-1/2+1/3-1/4+...+1/99-1/100
-1/2为第一项
首先sign=1
S4:sign=(-1)*sign 即sign=(-1)*1=-1
第二次:S4:sign=(-1)*sign,即sign=(-1)*(-1)=1 所以第2项为正
以次类推 试着看下2楼的程序
----------------解决方案--------------------------------------------------------
还有,谢谢YOU!呵呵!
----------------解决方案--------------------------------------------------------
原帖由 [bold][underline]wanzhiweime[/underline][/bold] 于 2007-12-5 15:02 发表 [url=http://bbs.bc-cn.net/redirect.php?goto=findpost&pid=1132518&ptid=190543][/url]
原来是这个意思啊?那个"*"号就应该是在数字的上面呀!可是书上写的就是在中间,那就是乘以吧?难道是书上写错啦?还是编程里就是这样表达的呀?
原来是这个意思啊?那个"*"号就应该是在数字的上面呀!可是书上写的就是在中间,那就是乘以吧?难道是书上写错啦?还是编程里就是这样表达的呀?
不,是我表达错了~~~ 但是意思是那个意思 书并没有写错
----------------解决方案--------------------------------------------------------
判断输入的数是奇数还是偶数,然后用两个函数实现
----------------解决方案--------------------------------------------------------
恩!我知道了!我看懂了!呵呵!谢谢你们!
----------------解决方案--------------------------------------------------------