編輯我會重新解釋,每當我說小數,我的意思是system.decimal
不是數學概念之間的C#生成隨機小數兩位小數
decimal min = 5.62;
decimal max = 14.39;
我將如何得到system.decimal
是隨機的之間上述兩位小數的範圍爲?
雙!= system.decimal
僅供參考,我不知道我怎樣才能使我的問題清晰,因爲一半以上閱讀本只讀2個字,然後標記爲重複的人。
編輯我會重新解釋,每當我說小數,我的意思是system.decimal
不是數學概念之間的C#生成隨機小數兩位小數
decimal min = 5.62;
decimal max = 14.39;
我將如何得到system.decimal
是隨機的之間上述兩位小數的範圍爲?
雙!= system.decimal
僅供參考,我不知道我怎樣才能使我的問題清晰,因爲一半以上閱讀本只讀2個字,然後標記爲重複的人。
y = mx + c。使用NextDouble()隨機生成一個0 < = X < = X <,將其乘以(Dmax-Dmin)到正確的範圍內,然後添加Dmin以移動基數。
Scale的小數到整數或整數大(由10.適當的力量放大它們之間產生一個int,然後按10
動力分配或產生一個int,然後只是它的規模( 。線性)的小數之間
如果你需要一個double來生成一個double,而不是一個int,除非你只需要一個簡短的,固定的精度。 – Servy
@Servy OP引用的C#小數不是雙精度值,它是一個固定點數,可以縮放:http://msdn.microsoft.com/en-us/library/364x0z75%28v=vs.80%29 .aspx –
public static double randomDouble(Random rand, double start, double end)
{
return (rand.NextDouble() * Math.Abs(end-start)) + start;
}
這裏是一個資源在這裏StackOverflow上;)
Generating a Random Decimal in C#
或y你可以嘗試:
Random random = new Random();
Math.Round((random.NextDouble()/100),3));
希望這有助於!
儘管你可能會想。這是一個重複的答案是你正在尋找的。 **兩個小數之間的小數點使得NO SENSE **它沒有意義的原因是因爲5.5是一個有效的小數值。 –
@Rhhound我不是在尋找一個簡單的隨機小數,我不知道我有多清楚,我必須做到這一點,system.decimal必須是隨機的,但有兩個system.decimal的範圍謝謝你 – BananaPoop