2014-04-03 38 views
-2

我已經得到了這個家庭作業,我已經找到了一個可行的解決方案,但我不明白爲什麼當輸入從[0到1]的範圍時,Random()函數只打印零。當我給max參數加1時,它的工作原理是// rnd.Next(min,max + 1);但是爲什麼只有當它像這樣離開時才爲零:rnd.Next(min,max);在一個範圍內打印隨機數

static void Main() 
    { 
     Console.Write("Please enter integer n: "); 
     int n = int.Parse(Console.ReadLine()); 
     Console.Write("Please enter min integer: "); 
     int min = int.Parse(Console.ReadLine()); 
     Console.Write("Please enter max integer: "); 
     int max = int.Parse(Console.ReadLine()); 

     Random rnd = new Random(); 

     for (int i = 0; i <= n; i++) 
     { 
      Console.WriteLine(rnd.Next(min, max+1)); 
     } 
    } 
+2

0到1之間有多少個整數? – ja72

+0

您是否閱讀過「Random.Next」的文檔? –

回答

4

Random.Next產生許多範圍[min, max) - 這意味着min是一個可能的結果,但max不是。 [0, 1)範圍內的唯一整數是0