C
chatop
Unregistered / Unconfirmed
GUEST, unregistred user!
要求是这样的
这个小工具是用来算投标标的可能性用的
1.用户输入N个金额的区间,比如130-500 566-741 .........
2.用户输入产生N个随机数 比如 1......10000
3.用户为所输入的金额区间,设定出现机率,数字越大,从中生产的随机数直多,如果有5个区间,每个区间的出现机率为20%,那时
应该在这5个区间里每个区间中生产一个随机数,如果其他都是0%,而第5区间是100,用户要求输出3个随机数,就应该在第5区间
里生产出这3个随机数
4.随机数的生产是在区间内的数,可包括区间开始和结尾的二个数
5.取出用户需要生产的N个随机数后,将随机数取平均值
如果n <5,就直接取n的平均值 后输出
如果n>=5 and <9,则将去掉最小的值和最大的值,将剩下的值取平均值 后输出
如果n>=9,则去掉最小的2个值和最大的2个值,将剩下的值取平均值 后输出
前贴有高手给出下面这段代码,,但似乎并不符合要求。
再求高手支招。谢谢。。。。
再讲清楚点,意思是这样的
有3个数组
array1=1,5,10 //区间的低位值
array2=3,8,15 //区间的高位值
array3=10,20,70 //区间的取值机率
其实这三个数组的意思是
1-3|10,5-8|20,10-15|70
1到3,机率10,5到8机率20,10到15机率70
怎么按机率,在这三个数组里,取出N个随机数?
比如 ,取3个随机数
有可能都是从70机率的区间里取出来的,当然也有可能70里取2个,其他二个中取一个,或者平均取
这个小工具是用来算投标标的可能性用的
1.用户输入N个金额的区间,比如130-500 566-741 .........
2.用户输入产生N个随机数 比如 1......10000
3.用户为所输入的金额区间,设定出现机率,数字越大,从中生产的随机数直多,如果有5个区间,每个区间的出现机率为20%,那时
应该在这5个区间里每个区间中生产一个随机数,如果其他都是0%,而第5区间是100,用户要求输出3个随机数,就应该在第5区间
里生产出这3个随机数
4.随机数的生产是在区间内的数,可包括区间开始和结尾的二个数
5.取出用户需要生产的N个随机数后,将随机数取平均值
如果n <5,就直接取n的平均值 后输出
如果n>=5 and <9,则将去掉最小的值和最大的值,将剩下的值取平均值 后输出
如果n>=9,则去掉最小的2个值和最大的2个值,将剩下的值取平均值 后输出
前贴有高手给出下面这段代码,,但似乎并不符合要求。
再求高手支招。谢谢。。。。
再讲清楚点,意思是这样的
有3个数组
array1=1,5,10 //区间的低位值
array2=3,8,15 //区间的高位值
array3=10,20,70 //区间的取值机率
其实这三个数组的意思是
1-3|10,5-8|20,10-15|70
1到3,机率10,5到8机率20,10到15机率70
怎么按机率,在这三个数组里,取出N个随机数?
比如 ,取3个随机数
有可能都是从70机率的区间里取出来的,当然也有可能70里取2个,其他二个中取一个,或者平均取