标题:求π的近似值,麻烦帮我看下哪儿错了
只看楼主
诗蓝
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2015-1-6
得分:0 
以下是引用rjsp在2015-1-7 11:09:22的发言:


你做大的错误是,只说“求π的近似值,麻烦帮我看下哪儿错了”,却不告诉别人你求π所用的公式。
而像 i/n 这种 int除int 的错误,反而是其次的,微不足道的。

∏/4≈1-1/3+1/5-1/7+...直到发现某一项的绝对值小于1e-6为止
2015-01-07 11:18
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
回复 10楼 诗蓝
我承认 我错了

为了验证这个东东 写了2行代码测试  表示vs2010下能够通过测试 并取得正确结果

程序代码:
#include <stdio.h>

int main()
{
    int n=5;
    n=-n;
    printf("%d\n",n);
    return 0;
}

DO IT YOURSELF !
2015-01-07 11:21
诗蓝
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2015-1-6
得分:0 
回复 12楼 wp231957
谢谢(∩_∩)我就是不明白为什么我的程序不对
2015-01-07 11:26
yahwei
Rank: 7Rank: 7Rank: 7
来 自:湖~
等 级:黑侠
威 望:3
帖 子:145
专家分:644
注 册:2011-11-10
得分:2 
以下是引用诗蓝在2015-1-7 11:26:11的发言:

谢谢(∩_∩)我就是不明白为什么我的程序不对
第9楼的回答请仔细看……整型数除以整型数是不会得到浮点型数的……

[qq]949654600[/qq]
2015-01-07 16:58
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
得分:1 
    for(n=1;;n=n+2)
    {
        x=i;   //先将i值赋给x,相当于进行了一次数据类型转换
        x=x/n; //这样的结果就是double类型了
        if(fabs(x)<=1e-6)
            break;
        s=s+x;
        i=-i;
   
    }

能编个毛线衣吗?
2015-01-07 19:05
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
得分:2 
为什么不用强制类型转换,直接将结果转换成double型

一片落叶掉进了回忆的流年。
2015-01-07 19:26
贺晋飞
Rank: 2
来 自:山西
等 级:论坛游民
帖 子:10
专家分:18
注 册:2015-1-6
得分:2 
可以直接double n=1,i=1;

加油
2015-01-07 19:27
诗蓝
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2015-1-6
得分:0 
谢谢各位!
2015-01-07 21:06



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-440787-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.101984 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved