压辊用户选择侧面数量

时间:2012-12-03 16:47:07

标签: c# random dice

我是编程的新手,我正试图在C#中建立一个模具滚轴游戏。

该程序询问用户的边数,然后用随机数掷骰子。

我有以下伪代码:

  1. 询问用户的边数。
  2. 使用随机数滚动模具,最大范围是边数。
  3. 告诉用户滚动的号码
  4. 我的问题是如何通过在用户指定的范围内生成随机数来掷骰子?

5 个答案:

答案 0 :(得分:2)

System.Random类通常用于生成随机随机数。

它有一个名为Next的方法的重载,它生成一个大于或等于0且严格小于传递的整数参数的随机整数。

因此,如果用户选择了n侧面骰子,并且您有Random r的实例,

r.Next(n) + 1

将生成1n之间的随机整数。

优良作法是创建Random的单个实例并重复使用它,因为如果您创建多个实例,它们将生成相同的数字。

答案 1 :(得分:1)

Random random = new Random();
int randomNumber = random.Next(1, userInput);

有一件事让你知道,随机函数不是随机的,它是随机的,但每次都是以相同的随机顺序..我会让你看看你最喜欢的搜索引擎播种;)

答案 2 :(得分:0)

获取0到100之间的随机整数,其中不包含100:

Random random = new Random();
int randomNumber = random.Next(0, 100);

答案 3 :(得分:0)

public int RollDice(int iNoSides)
{
  var rand = new Random();
  return rand.Next(iNoSides) + 1
}

一个简单的谷歌random number c#会让你或多或少得到这个确切的代码。

修改

您可以从其他答案和评论中获得MSDN文档的链接,我知道您的新编程,但最好的学习方法是尽可能努力地获取某些东西。如果你进入一个你的思想无法运作的状态,在Stack上发布你的问题尝试会让人们更加高兴,因为他们真正帮助那些陷入困境的人

编辑2

按照@Rawling的评论,我意识到该方法的重载表明Next(n)返回Non-negative number less than the specified maximum

答案 4 :(得分:0)

System.Random,特别是System.Random.Next(Int32, Int32)应该让你开始。

Random.Next(Int32, Int32)
Returns a random number within a specified range.