标题:哪里错了那,求改正
只看楼主
冬青123
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2019-4-15
结帖率:90.91%
已结贴  问题点数:7 回复次数:4 
哪里错了那,求改正
x=2.5
#include<stdio.h>
#include<math.h>
main()
{int i,j,p,t=1;
double sum=1,m,a,n=1.0;
for(i=1;i<=15;i++) {
for(j=1;j<=i;j++) {n*=j;}
m=pow(2.5,i);
a=(t*m)/n;
sum+=a;
t=-1;}
printf("%f",sum);
}
搜索更多相关主题的帖子: include sum for pow printf 
2019-07-15 10:30
LTao
Rank: 2
等 级:论坛游民
威 望:3
帖 子:27
专家分:86
注 册:2019-5-11
得分:3 
int x=2.5;
2019-07-15 11:03
冬青123
Rank: 1
等 级:新手上路
帖 子:39
专家分:0
注 册:2019-4-15
得分:0 
回复 2楼 LTao
x=2.5只是条件,不是程序里的再说你那样定义也不对呀
2019-07-15 11:05
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:3 
程序代码:
#include <stdio.h>

int main( void )
{
    double x = 2.5;
    unsigned n = 15;

    double result = 1;
    double a=-1, b=1;
    for( unsigned i=0; i!=n; ++i )
    {
        a *= -x;
        b *= i+1;
        result += a/b;
    }
    printf( "%f\n", result );
}

输出 1.917915,与图片中的结果不一致。

2019-07-15 11:05
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
特意写了个程序,求得无损结果应当是
657459357691747/342798989524992 = 1.9179150982993620109936244273008……
所以图片中的“1.917914”肯定是错误的。
2019-07-15 16:50



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




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

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