close

Random rnd = new Random();

int MinValue = 0;

int MaxValue = 2;

MessageBox.Show(rnd.Next(MinValue,MaxValue).ToString());

假設有這樣的一個敘述,那麼亂數產生的值會介於0到1之間,因為亂數產生出來的"最大值會小於MaxValue",如果MaxValue 等於 MinValue 則會直接傳回MinValue。

所以如果要產生0到2之間的亂數必須再把最大值加1,

int MaxValue = 3;

這樣就會產生0到2之間的亂數了...

 

還有另一種方法

int value = rnd.Next()%(2-0+1); // 這樣會產生出0到2之間的亂數

他有一個公式

rnd.Next()%(MaxValue - MinValue + 1) + MinValue; // rnd.Next()%(最大值 - 最小值+ 1) + 最小值;

這樣就能正確的產生我們要的範圍了...

 

※ 一篇防止自己忘記的文章...有錯請多多指正!!

arrow
arrow
    全站熱搜

    小賢 發表在 痞客邦 留言(3) 人氣()