e的x次幂,编得不好
题目如下:我是这样编的:
#include <iostream>
using namespace std;
//计算val1的val2次幂
long series(int val1,int val2)
{
long result_of_series=1;
for(int i=0;i!=val2;++i)
result_of_series*=val1;
return result_of_series;
}
//计算val的阶乘
long factorial(int val)
{
for(int i=(val-1);i!=0;--i)
val*=i;
return val;
}
int main()
{
int n,x;
//part为数列的每一个元素,从n=1开始
//result用于存储最后的结果
double part,result=1;
cout<<"请输入n:";
cin>>n;
cout<<"请输入x:";
cin>>x;
for(int i=1;i<=n;++i)
{
part=series(x,i)/factorial(i);
result+=part;
}
cout<<"e的x次幂是:"<<result<<endl;
return 0;
}
总觉得有点蹩脚,输入小一点的数还行,大一点的就卡壳了。麻烦哪位同学帮我指正改进一下?谢谢了!
[此贴子已经被作者于2007-10-22 13:52:38编辑过]