随机数生成器以将数字绘制到范围内的任何给定数字?我试图想出一个随机数生成器,它返回一个介于0和1之间的浮点值,并在一个方向或另一个方向对返回值进行加权。有没有可靠的方法来传递两个数字,例如Random(0.5),其中“0.5”表示0和1之间的数字将被绘制为0.5。这有帮助吗?http://www.c-sharpcorner.com/UploadFile/trevormisfeldt/NormalDistribution08302005003434AM/NormalDistribution.aspx它并不能完全解决您的问题,但我想知道对钟形曲线建模是否可以提供您正在寻找的趋势。有趣的问题,请问您要解决什么问题?第二次编辑:我刚刚注意到另一个可能有帮助的S/O问题:Randomnumbersinarangebasedonanormaldistribution你指的是投影到钟形曲线上的随机数我通常会执行以下操作//////生成随机数,其中大数的可能性大于小数的可能性//////用于生成数字的随机数生成器///随机数publicstaticdoubleInverseBellCurve(Randomrnd){return1-贝尔曲线(rnd);}//////生成一个随机数,其中小数的可能性大于大数的可能性//////用于生成数字的随机数生成器///随机数publicstaticdoubleBellCurve(Randomrnd){returnMath.Pow(2*rnd.NextDouble()-1,2);}//////生成一个随机数,其中中间范围数的可能性大于大数或小数的可能性//////用于生成数字的随机数生成器///随机数numberpublicstaticdoubleHorizo??ntalBellCurve(随机rnd){//这不是真正的钟形曲线,因为使用值的立方,而是近似结果集return(Math.Pow(2*rnd.NextDouble()-1,3)/2)+.5;注意,你可以调整公式来改变钟的形状来调整结果的分布。例如,一个简单的Math.Sqrt(rnd.nextdouble())会将所有数字倾斜为1,而一个简单的Math.Power(rnd.nextdouble(),2)会将结果倾斜为0所有共享的内容,如果它对你有用,需要详细了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如有转载请注明出处:
