精确e的小数点后位数

精确e的小数点后位数

ID:33831135

大小:152.00 KB

页数:7页

时间:2019-03-01

精确e的小数点后位数_第1页
精确e的小数点后位数_第2页
精确e的小数点后位数_第3页
精确e的小数点后位数_第4页
精确e的小数点后位数_第5页
资源描述:

《精确e的小数点后位数》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、题目:精确e的小数点后位数(位数大于5000)题目:精确e的小数点后位数。(位数大于5000位)。程序代码://#include该头文件与String头文件功能大致相同,均为字符串模板类,可以定义字符串指针char*。//#include该头文件包含,即模板类中使用的assert函数,功能是可以在出错的时候指出。//#include该头文件包含输入输出流。//程序设计思路:e=1+1+1/2!+1/3!+1/4!+.....+1/n!(这是估算自然常熟e的公式)。//intlength:希望计算的长度,例如5000为

2、希望计算到小数点后五千位。//char*result:结果存储,需要预先分配空间。本程序采用十六进制,即本程序中数字0-9存储为0x00-0x09。//程序优越性较强:可以在一秒以内计算到小数点后10000位。#include#include#includeusingnamespacestd;voidcalculateE(intlength,int*result)//这是一个模板类的定义。{int*tmp;int*lastTmp;int*tempResult[2];//分配两个空间,存放的是指针。assert(result);//如果程

3、序遇到错误,将返回提示信息。tempResult[0]=newint[length];tempResult[1]=newint[length];tmp=tempResult[0];lastTmp=tempResult[1];inttmpIndex=0;memset(lastTmp,0,length*sizeof(int));//该函数的功能就是把lastTmp所指的一段数组空间清0。lastTmp[0]=1;for(intcal=2;cal<=length;++cal){memset(tmp,0,length*sizeof(int));intfirstNoZero=0;staticintdi

4、v=1;for(;div<=cal;++div){intquo=0;intrem=0;for(intj=0;j=firstNoZero-1;--i){intt

5、mp_sum=tmp[i]+result[i]+flag;flag=(tmp_sum>=10?1:0);result[i]=(flag?tmp_sum-10:tmp_sum);//flag如果大于10,则减去10再赋值。否则,直接赋值。}//估算到小数点后length位的算法。lastTmp=tmp;tmpIndex=(tmpIndex?0:1);tmp=tempResult[tmpIndex];}delete[]tempResult[0];delete[]tempResult[1];result[0]+=2;//result[0]存放最终结果。}intmain(){intn;cout<<"

6、pleaseinputyouwantedprecision(输入你想计算的精确度,即为length赋值):";//请输入你想计算的精确度,即小数点后的位数。cin>>n;cout<<"thenewlinefollowedby50number";//以每行50个数输出结果。int*result=newint[n+1];memset(result,0,(n+1)*sizeof(int));calculateE(n,result);//调用calculateE。cout<<"2.";for(inti=0;i

7、ut<<'';//每输出5个数就输出一个空格。if((i+1)%50==0)cout<

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。