| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 5145 人关注过本帖
标题:输入一个实数x,计算多项式x+(x^2)/2!+(x^3)/3!+...的和,直到末项的绝对值 ...
只看楼主 加入收藏
xtay1324
Rank: 2
等 级:论坛游民
帖 子:6
专家分:11
注 册:2012-3-13
收藏
得分:1 
没看懂,求x的值你居然scanf了,那怎么试啊,其实就是e^x-1 的泰勒展开
2012-03-30 14:26
a291790832
Rank: 1
等 级:新手上路
帖 子:1
专家分:5
注 册:2012-3-30
收藏
得分:5 
for(i=1;(fabs(b/a))<=1e-5;i++)
这个循环至少要来一次  可以用 DO-WHILE 语句  
    long int i=1,term2=1;

    double x,res=0.0,term1=0.0,k,term3=1.0;
    scanf("%lf",&x);

        do
        {
            term2*=i;
            term3*=x;
            k=term3/term2;

            res+=k;
            i++;
        }while(fabs(k)>=0.001);

    printf("%.3lf\n",res);
2012-03-30 15:23
这卦不灵
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2012-3-14
收藏
得分:0 
已经解决了,谢谢大家啊!!!
#include<stdio.h>
#include<math.h>
int main()
   {
   double fact(int n);
   int i;
   double x,s,f;
   while(scanf("%lf",&x)!=EOF)
   {

   i=1;     s=0;
  while(pow(x,i)/fact(i)>=1e-5)
  {
    s+=pow(x,i)/fact(i);
     i++;
   }
   printf("%0.3lf\n",s);
   }
    return 0;
}
double fact(int n)
{
  double sum=1;
   while(n>0) sum*=n--;
   return sum;
}
2012-03-31 16:56
jackhuang
Rank: 2
等 级:论坛游民
帖 子:16
专家分:52
注 册:2012-3-30
收藏
得分:5 
//给你一个简单点的!
#include<stdio.h>
#include<math.h>
void main()
{
    double  n=1,s,sum=0;
    int  x,i,j;
    printf("计算x+(x^2)/2!+(x^3)/3!+...,直到末项的绝对值小于10^-5(保留三位小数)\n请输入一个实数:");
l1:    scanf("%d",&x);
    printf("\n当最后一项小于0.00001时有以下结论:\n");
    for(i=1;fabs(s/n)>=0.00001;i++)
    {
        s=pow(x,i);
        n*=i;
        sum+=s/n;
    }
    printf("和等于:%5.3f\n 最后项:%5.7f\n",sum,s/n);
    printf("\n\n\nreinput your date to test:");
    goto l1;
}
2012-03-31 17:44
蓝xuan
Rank: 4
等 级:业余侠客
帖 子:81
专家分:211
注 册:2012-3-31
收藏
得分:5 
//输入一个实数x,计算多项式x+(x^2)/2!+(x^3)/3!+...的和,直到末项的绝对值小于10^-5(保留三位小数)
#include<iostream.h>
#include<iomanip.h>
#include<math.h>
int main()
{
    double s,x,t,k;
    int i,n;
    cout<<"请输入x:";
    while(cin>>x)
    {
        s=x;
        t=1.0;        
        k=1.0;
        n=i=1;
        do
        {
            
            k*=x;
            n*=i;
            i++;
            t=k/n;
            s+=t;
        }while(t>=1e-5);
        cout<<setprecision(4)<<s<<endl;
    }
    cout<<endl;
}
2012-04-01 15:21
樾宝
Rank: 3Rank: 3
来 自:常德
等 级:论坛游侠
帖 子:72
专家分:147
注 册:2011-8-19
收藏
得分:1 
用“/”号的时候
前面的数字不应该是整型的
2012-04-01 15:29
快速回复:输入一个实数x,计算多项式x+(x^2)/2!+(x^3)/3!+...的和,直到末项的绝 ...
数据加载中...
 
   



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

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