hrefspace

 找回密码
 立即注册
搜索
热搜: PHP PS 程序设计
查看: 579|回复: 9

用VBA计算100000!

[复制链接]

484

主题

491

帖子

1493

积分

大司空

Rank: 5Rank: 5

积分
1493
发表于 2024-4-10 21:05:57 | 显示全部楼层 |阅读模式
为什么我用VBA写的计算阶乘的程序很慢?计算100000!需要大约400秒,这正常吗,对于VB类程序?
回复

使用道具 举报

0

主题

192

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2024-4-10 21:06:54 | 显示全部楼层
比我牛逼多了,我只会用软件
回复

使用道具 举报

0

主题

190

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2024-4-10 21:07:05 | 显示全部楼层
能贴一下程序吗?
回复

使用道具 举报

0

主题

198

帖子

3

积分

新手上路

Rank: 1

积分
3
发表于 2024-4-10 21:08:03 | 显示全部楼层
现在Basic很少用了,我这有个十几年前的,可以参考
回复

使用道具 举报

0

主题

180

帖子

37

积分

新手上路

Rank: 1

积分
37
发表于 2024-4-10 21:08:09 | 显示全部楼层

计算100000阶乘有错误,计算10000阶乘需要10秒。跟我编的计算器的性能差不多。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

216

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2024-4-10 21:08:50 | 显示全部楼层
大数阶乘的计算(六)

十六年前我也曾写过VB系列的大数阶乘计算,供参考。

当时CSDN算法版已经在讨论如何1秒钟计算一亿或10亿的阶乘了
回复

使用道具 举报

585

主题

769

帖子

2007

积分

大司空

Rank: 5Rank: 5

积分
2007
发表于 2024-4-10 21:09:32 | 显示全部楼层
楼主可以研究一下郭老师16年前的算法 ,当时的配置HugeCalc计算100000!的阶乘需要0.07秒

高精度快速阶乘算法
回复

使用道具 举报

0

主题

185

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2024-4-10 21:10:09 | 显示全部楼层

用Excel中的VBA做的。没有采用特殊的算法,就是硬乘。这已经是我VB编程能力的极限了。末尾的零们没有参与运算。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

0

主题

174

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2024-4-10 21:10:32 | 显示全部楼层
预估位数
long型数组存储
可以每8位一组
分解因数优化运算,尽可能多的平方运算
预存一些小数字的阶乘结果
回复

使用道具 举报

0

主题

185

帖子

2

积分

新手上路

Rank: 1

积分
2
发表于 2024-4-10 21:10:43 | 显示全部楼层
参考一下 mathematica的结果
{10!,      1.92435*10^-6 秒 }
{100!,     6.09377*10^-6 秒 }
{1000!,    8.98029*10^-6 秒 }
{10000!,   0.000389039   秒 }
{100000!,  0.0101275     秒 }
{1000000!, 0.204683      秒 }
{10000000!,3.89173       秒 }
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|hrefspace

GMT+8, 2024-12-4 16:44 , Processed in 0.062135 second(s), 23 queries .

Powered by hrefspace X3.4 Licensed

Copyright © 2022, hrefspace.

快速回复 返回顶部 返回列表