совместив два метода получил следующий:
Dim Value(4)
For q=0 To 10000
X=aRnd(1,4)
Value(X)=Value(X)+1
Next
For q=0 To 4
Print q+" возвращалось приблизительно в "+ Value(q)/100+"% случаев..."
Next
WaitKey()
End
function arnd%(b%,e%)
b1%=-b%*10
e1%=e%*20
repeat
r%=rnd(b1%,e1%)
until r%>=b% and r%<=e%
if r>e then r=r-e
return r%
end function
результат - супер! скорость работы - подбирается коэффициентами умножения... тут типа движок <Скорость> -----0----- <Ровнее график> чемто надо жертвовать..