2017-03-10 1 views
0

을 난이 있습니다. 이 값은 사용자가 입력합니다. 난수를 생성 할 때 더 높은 값이 나타나지 않습니다. 예를 들어, 사용자는 1과 5를 입력합니다. 반복적으로 숫자를 생성하며 어떠한 상황에서도 숫자 5가 나타나지 않습니다. 5가 아닌 1 또는 2, 3 또는 4로만 나타납니다. 왜?높은 값

+0

도 '랜덤'을 만들기 전에 사용하지 마십시오. 현장에 가져다주세요. 그 대신에 그걸 사용하십시오 –

답변

6

당신은 기능 문서를 보면 : https://msdn.microsoft.com/en-us/library/2dx6wyd4(v=vs.110).aspx

높은 값은 독점입니다.

그것을 포함하려면 당신이 할 필요가 :

int final = rnd.Next(minValue, maxValue+1); 
+0

대단히 고마워요! 이것은 내 문제를 해결하고 나의 의심을 분명히합니다. –

1
int minValue = int.Parse(min.Text); 
int maxValue = int.Parse(max.Text)+1; 
Random rnd = new Random(); 
int final = rnd.Next(minValue, maxValue); 
result.Text = final.ToString(""); 

걸리는 MAXVALUE 범위는 maxValue를-1 MINVALUE에서 시작하기 때문에이 작동합니다.

+0

대단히 감사합니다! 이것은 내 문제를 해결하고 나의 의심을 분명히합니다. –