vb的 自然数无限阶乘 怎样实现啊 用数组 或者 字符串都行

killua_307 2005-09-23 07:25:14
请教高手
...全文
285 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
脆皮大雪糕 2005-11-03
  • 打赏
  • 举报
回复
gxqcn能否公开PowCalc的代码呢?
脆皮大雪糕 2005-11-03
  • 打赏
  • 举报
回复
顶楼上的,敬仰很久了!
northwolves 2005-11-03
  • 打赏
  • 举报
回复
郭先生的程序确实好用。
gxqcn 2005-11-03
  • 打赏
  • 举报
回复
我曾在VB下开发了 PowCalc,用里面的“数组线性导入”后再将“R=0”,可很快得到阶乘值(精确计算10000!仅需3.186s)

后来,我又用C++做了一个高精度算法库 HugeCalc,计算 10000!仅需 0.030806s;计算 100000!仅需 0.602865s.

有兴趣者请访问我的主页:http://maths.myrice.com/
下载页面为:http://maths.myrice.com/software.htm#02
killua_307 2005-09-23
  • 打赏
  • 举报
回复
再一次感谢大家~~~~
phommy 2005-09-23
  • 打赏
  • 举报
回复
Public Function power(ByVal i As Long)
On Error Resume Next
Debug.Assert i > 0
power = 1
While i > 0
power = power * i
If Err = 6 Then power = -1: Exit Function
i = i - 1
Wend
End Function
fishzone 2005-09-23
  • 打赏
  • 举报
回复

Private Sub Command1_Click()
Dim ReturnValue, I
ReturnValue = Shell("Calc.EXE", 1) ' 运行计算器。
AppActivate ReturnValue ' 激活计算器。
For I = 1 To 100 ' 设置计数循环。
SendKeys I & "{*}", True ' 按下按键给计算器
Next I ' 将所有 I 值相乘。
SendKeys "=", True ' 取得总合。

End Sub
northwolves 2005-09-23
  • 打赏
  • 举报
回复
去年我曾写过类似代码:

http://blog.csdn.net/northwolves/archive/2004/06/07/19602.aspx
viena 2005-09-23
  • 打赏
  • 举报
回复
直接用数算,只能算很小的,稍微大一点就溢出了
可以用数组模拟大数,乘法的实现与手算一样的,分别相乘,累加
killua_307 2005-09-23
  • 打赏
  • 举报
回复
谢谢

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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