社区
C#
帖子详情
C# 怎么实现按指定概率产生随机数?
ewaterlong
2009-04-16 11:34:35
比如产生数的范围是0-50,按60%(概率为K%)的概率产生0-20之间的数,按40%(概率为1-K%)的概率产生21-50之间的数?
...全文
1310
12
打赏
收藏
C# 怎么实现按指定概率产生随机数?
比如产生数的范围是0-50,按60%(概率为K%)的概率产生0-20之间的数,按40%(概率为1-K%)的概率产生21-50之间的数?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xukaifu
2009-04-16
打赏
举报
回复
先生成100个数
然后计算出>0 && <=60的数有多少 个
if(计算出的个数/100>0.6)
{
生成0~20的随机数
}
else
{
生成21~50的随机数
}
ewaterlong
2009-04-16
打赏
举报
回复
[Quote=引用 7 楼 joeandlily 的回复:]
悄悄的问:这个命题能实现吗?
[/Quote]
按2楼的方法
Random myRandom = new Random();
int i= myRandom.Next(1, 100);
if (i <=60)
{
int j = myRandom.Next(0, 20);
txtStr.Text = j.ToString();
}
else
{
int j = myRandom.Next(21, 50);
txtStr.Text = j.ToString();
}
ewaterlong
2009-04-16
打赏
举报
回复
[Quote=引用 6 楼 ltlzyy 的回复:]
先生成三个0-20的,再生成21-50的数两个,然后随机取一个出来
[/Quote]
这个随机取一个出来不太好实现吧
genius_tong
2009-04-16
打赏
举报
回复
[Quote=引用 2 楼 coodd 的回复:]
先生成1-100的随机数,如果小于等于60,就在0-20间生成随机数,否则在21-50间生成随机数。
[/Quote]
顶~
joeandlily
2009-04-16
打赏
举报
回复
悄悄的问:这个命题能实现吗?
ltlzyy
2009-04-16
打赏
举报
回复
先生成三个0-20的,再生成21-50的数两个,然后随机取一个出来
minioreo
2009-04-16
打赏
举报
回复
[Quote=引用 2 楼 coodd 的回复:]
先生成1-100的随机数,如果小于等于60,就在0-20间生成随机数,否则在21-50间生成随机数。
[/Quote]
对头
ewaterlong
2009-04-16
打赏
举报
回复
[Quote=引用 2 楼 coodd 的回复:]
先生成1-100的随机数,如果小于等于60,就在0-20间生成随机数,否则在21-50间生成随机数。
[/Quote]
想法不错,值得参考!大家还有更好的解决方法不?
rtdb
2009-04-16
打赏
举报
回复
支持2楼。
coodd
2009-04-16
打赏
举报
回复
先生成1-100的随机数,如果小于等于60,就在0-20间生成随机数,否则在21-50间生成随机数。
jie3614
2009-04-16
打赏
举报
回复
这个算法有意思 关注一下
ltlzyy
2009-04-16
打赏
举报
回复
[Quote=引用 9 楼 ewaterlong 的回复:]
引用 6 楼 ltlzyy 的回复:
先生成三个0-20的,再生成21-50的数两个,然后随机取一个出来
这个随机取一个出来不太好实现吧
[/Quote]
放在一个数组里就可以随机取到了,不过按效率来看,二楼的方法是最好的
C#
之
概率
随机数
概率
随机数:是在1-10内
产生随机数
,但是每个数生成的
概率
不同。例如1-9
概率
为10%,10的
概率
是%90;
提高
c#
随机数random产生随机函数的…
提高
c#
随机数random产生随机函数的随机性 用
C#
的Random函数连续的生成随机数,会发现结果往往都是一个值。原因就是Random函数需要一个种子,人为
指定
的方式是Random(i),如果没有明确
指定
种子的话,系统会自动用当前系统时间作为种子。如果程序执行过快就会造成,种子一样的情况,这时候产生的随机数就是同一个值。解决方案如下: Random类是一个产生伪随机数字的类,它的构造
按权重
产生随机数
题目
实现
一个抽奖功能。共有N中奖品,每种奖品都有一个对应的权重(整数),该奖品被抽到的
概率
与其权重成正比。假设奖品i的权重为weights[i],0 &amp;amp;lt;= i &amp;amp;lt; N,wieghts是长度为N的int数组,
实现
以下函数,返回抽中的奖品的编号。 举例:假设weights的内容为{10,20,20},那么应该有20%的
概率
返回0号奖品,40%的
概率
返回1号奖品,40%的
概率
返回2号奖...
c#
产生
指定
区间的随机数
C#
生成
指定
数目的互不相同的随机数 来源:中国自学编程网 发布日期:2008-06-18 Dotnet.Frameword中提供了一个专门
产生随机数
的类System.Random,计算机并不能产生完全随机的数字,它生成的数字被称为伪随机数,它是以相同的
概率
从一组有限的数字中选取的,所选的数字并不具有完全的随机性,但就实用而言,其随机程度已经足够了。 在使用
Visual
c#
中随机数的産生方法
一,簡單方法随机数的使用很普遍,可用它随机显示图片,用它防止无聊的人在论坛灌水还可以用来加密信息等等。本文讨论如何在一段数字区间内随机生成若干个互不相同的随机数,比如在从1到20间随机生成6个互不相同的整数,并通过此文介绍Visual
c#
中随机数的用法。.net.Frameword中提供了一个专门
产生随机数
的类System.Random,此类默认情况下已被导入,编程过程中可以直接使用。我们知
C#
111,129
社区成员
642,540
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章