|
〖RANDOM (1-?)〗 随机一个数字,根据后边的数字判定当前通过至#act的几率。
★注意这里有一些用法错误。★
错误一:
#if
RANDOM 3
#act
goto 1
break
#if
RANDOM 3
#act
goto 2
break
#if
RANDOM 3
#act
goto 3
break
很多人认为random的具体运行是首先在3以下随机取一个值,然后该脚本内的random 3都不再取值了。那样理解的时候goto 1、2、3的几率是相等的,都是1/3。这是一个理解上的错误,实际这里运行的操作是这样的,到达 1的几率为1/3,到达2的几率为先2/3然后1/3就是2/9。而到达3的几率则为2/3然后2/3然后1/3实际几率为4/27
!同样错误的还有如下写法
#if
RANDOM 3
#act
goto 1
#elseact
#if
RANDOM 3
#act
goto 2
#elseact
#if
RANDOM 3
#act
goto 3
#elseact
close
错误二:
#if
RANDOM 3
#act
goto 1
break
#if
RANDOM 2
#act
goto 2
break
#if
RANDOM 1
#act
goto 3
break
有人认为在第一个random的时候会给一个隐藏的值在3以下做一个赋值。然后以后的random就是检测是否自己的 random值和这个隐藏值相同,如果相同则#act。这个也是一种错误理解,虽然同是对random理解错误造成的, 但是该错误与错误一理解上是不同的。但是这种随机的设计方式是提倡的,利用P变量的随机取值是可以完成的
|
|