作者kim (口古口古)
看板Visual_Basic
标题[VBA ] 请问取NORMAL乱数
时间Fri Jun 20 20:56:42 2008
本来我是用
a=application.normsinv(rnd())来做的
但是如果a要取个十万笔
因为normsinv是一个数值分析法的函式
就会比较久
而另一个比较快的
听说是 sqr( cos(2*3.1415926*rnd()) - 2*log(rnd()) )
不知道这样......感觉好像不太对劲
请问有人可以指正吗
谢谢
--
延平郡王郑成功 我校精神法其风 承先启後 先生志诚正勤朴学子崇
┐┌
立足在乡园 放眼是大千
延平 延平 延平 杏坛有
延平 ●
立日正当中 立日 正当中
◢ ◣
http://www.wretch.cc/blog/pikachu25 / \
http://www.wretch.cc/album/pikachu25 / / || \ \
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.181.202
1F:推 Marty:VBA里面是用"Sqr"而不是"Sqrt"...另外用VBA做模拟比较慢.. 06/20 22:59
2F:→ Marty:要讲究速度的话VBA很难办到..不如改用Matlab吧..XD 06/20 23:00
嗯 我改正了
不过......重点是
我想请问一下公式有没有错呢?
这是我朋友提供的
但sqr里面不应该有出现负数的可能......
※ 编辑: kim 来自: 59.120.212.162 (06/20 23:38)
3F:推 fumizuki:log>cos 就会错误 06/21 08:10
4F:推 fumizuki:测试的结果 log出来的值一定是负数 06/21 08:13
5F:→ fumizuki:cos可能为正数亦可能为负数 06/21 08:14