[
会员中心
] [
发布文章
][
发布软件
] [
中文繁體
]
文章
·
资料
电脑软件
手机软件
网站源码
电脑·手机·网络
学习
话题
娱乐
故事
文化·历史
国学典籍
法律法规
操作系统
网络
办公·文件
音频视频
图形图像
硬件·驱动程序
行业
教学学习
编程
游戏
安卓
苹果
鸿蒙
其他
ASP
ASP.NET
JSP
PHP
HTML
·
CSS
·
JavaScript
本 站 搜 索
文章
软件
[选项]
文章类别:
[全部]
电脑·手机·网络
话题
故事
文化·历史
娱乐
学习
法律·法规
国学典籍
搜索选项:
文章编号
文章标题
文章作者
文章来源
相关链接
关键字词
文章标签
文章内容
软件类别:
[全部]
操作系统
网络
办公·文件
音频视频
图形图像
行业
编程
教学学习
游戏
硬件·驱动程序
安卓系统
苹果系统
鸿蒙系统
其他系统
HTML·CSS·JavaScript
ASP
JSP
PHP
ASP.NET
搜索选项:
软件编号
软件名称
软件作者
软件来源
相关链接
关键字词
软件标签
软件简介
发 送 文 章
圆周率,计算机C++编译器中的运算程序
〖
评论()
〗〖
留言
〗〖
收藏
〗
收信地址
填写收信人的电子邮箱
邮件主题
填写邮件主题
邮件内容
微机 Windows XP 中 Dev-cpp 中的运算程序(30000位)(C++) #include cstdlib.h #include iostream.h #include fstream.h #define N 30015 using namespace std; void mult (int *a,int b,int *s) { for (int i=N,c=0;i=0;i--) { int y=(*(a+i))*b+c; c=y/10; *(s+i)=y%10; } } void divi (int *a,int b,int *s) { for (int i=0,c=0;i=N;i++) { int y=(*(a+i))+c*10; c=y%b; *(s+i)=y/b; } } void incr(int *a,int *b,int *s) { for (int i=N,c=0;i=0;i--) { int y=(*(a+i))+(*(b+i))+c; c=y/10; *(s+i)=y%10; } } bool eqs(int *a,int *b) { int i=0; while (((*(a+i))==(*(b+i)))(i=N)) i++; return iN; } int main(int argc, char *argv[]) { int lpi[N+1],lls[N+1],lsl[N+1],lp[N+1]; int *pi=lpi,*ls=lls,*sl=lsl,*p=lp; for (int i=0;i=N;i++)*(pi+i)=*(ls+i)=*(sl+i)=*(p+i)=0; memset(pi,0,sizeof(pi)); memset(ls,0,sizeof(ls)); memset(sl,0,sizeof(sl)); memset(p,0,sizeof(p)); *pi=*ls=*sl=1; for (int i=1;true;i++) { mult(ls,i,sl); divi(sl,2*i+1,ls); incr(pi,ls,p); if (eqs(pi,p)) break; int *t; t=p; p=pi; pi=t; if (i%50==0) cout i ; } cout endl; mult(p,2,pi); ofstream fout(pi.txt); fout *pi .; for (int i=1;i=N;i++) { fout *(pi+i); if (i%10==0) fout ; if (i%80==0) fout endl; } return EXIT_SUCCESS; } 注: ①运行时会有数据弹出,那是无关紧要的,只为了加快了感觉速度; ②最后的txt文本里有30015位,其中最后15位可能是错的。 ③程序中的,是大写的请改成小写。
文章网址:
https://dangbai.cn/Article.asp?ID=10002409
填写邮件内容
发信地址
填写发信人的电子邮箱
邮件签名
填写邮件签名
验证码
填写验证码,单击刷新验证码
程序执行中,请稍候...
发送协议
·欢迎使用本站在线文章发送系统。
·不得使用本站在线发送邮件系统发送垃圾邮件、广告邮件。
·如果收信人地址或其服务器出现错误,可能无法成功发送。
·如果有什么问题,或者意见建议,请联系[
网站管理员
]。
当百网
本站使用【啊估文章软件站】网站系统
〖
网站管理员留言簿
〗