拜求该题算法和思想

sincey 2004-04-07 11:47:28
求 e=1+1/1!+1/2!+...+1/n! 精确到1000位
...全文
68 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
gnefuil 2004-04-08
  • 打赏
  • 举报
回复
高精度除法一点一点除啊
BlueSky2008 2004-04-08
  • 打赏
  • 举报
回复
int a[3302],b=3301,*c=a,d,e,f;
main()
{
for(e=b;--e;*c++=1);
*c=2;
for(d=2001;d--;printf("%05d",f))
for(c=a,e=b;e;f/=e--)
{f+=*c*1e5;
*c++=f%e;}
}
zhaoyifei1 2004-04-08
  • 打赏
  • 举报
回复
1/n!<(e/n)exp(n)/(2npi)exp(0.5)<(1+1/2n)/n!
精度很高。试试看。但是达不到你的要求。你自己发明个公式吧!
sincey 2004-04-08
  • 打赏
  • 举报
回复
多谢各位大虾,我参考了一下清华出版的《高级程序员水平考试》,上面介绍了一种用数组存储精度的方法,但好像敲进去结果不对!!!
lnetant 2004-04-08
  • 打赏
  • 举报
回复
考虑一下时间复杂度的问题可以吗?有没有时间比以上各位更简单的算法,算法不是要考虑时间和空间的复杂度问题吗?要不要算法也没用了,一点小提议
NewStarSE 2004-04-08
  • 打赏
  • 举报
回复
当然是收敛的。
Arlarmiss 2004-04-08
  • 打赏
  • 举报
回复
知心的朋友,我将我的做出示给你,希望能给你一些启发.
算法如下:
# include<stdio.h>
main()
{ float s,t;
int i,k,n;
long jc;
printf("请输入N:");
scanf("%d",&n);
printf("\n");
s=1;
k=1;
do {
jc=1
for(i=1;i<k;i++) jc=jc*i;
t=t/jc;
if((t-(int)t)>0.001) break;
s=s+t;
k++;
}while(k<=n);
printf("结果为:%f\n",s);
}

祝您好运
timiil 2004-04-08
  • 打赏
  • 举报
回复
用牛顿叠代求倒数,用高精度乘法求阶乘。

BTW,数学学得不好,这个等式是否趋向一个极限,还是发散的?
内容概要:本文介绍了一种基于不变扩展卡尔曼滤波器(Invariant Extended Kalman Filter, IEKF)的传感器融合方法,用于从惯性测量单元(IMU)和全球定位系统(GPS)数据中估计微型无人机的姿态与状态。该方法利用IEKF对系统状态进行递归估计,有效融合多源异构传感器数据,提高姿态解算精度与系统鲁棒性。文中提供了完整的Matlab代码实现,便于研究人员复现算法并进行进一步优化与测试,适用于无人机导航、自主飞行与状态估计等应用场景。; 适合人群:具备一定控制理论、信号处理与无人机基础知识,从事无人系统导航、状态估计或传感器融合相关研究的科研人员及研究生。; 使用场景及目标:① 实现无人机在复杂环境下的高精度姿态估计;② 掌握基于IEKF的多传感器数据融合技术,提升无人机导航系统的可靠性与实时性;③ 通过Matlab仿真验证算法有效性,为实际飞行测试提供理论支撑。; 阅读建议:此资源以Matlab代码为核心,建议读者结合理论推导与代码实现进行学习,重点关注IEKF的状态预测与更新流程、IMU与GPS数据预处理及坐标系转换等关键环节,建议在仿真环境中逐步调试,深入理解滤波器参数对估计性能的影响。

33,026

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧