2017-03-10 3 views
0

Ich habe dies:generieren Zufallszahl - Höheren Wert

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

Ich werde die beiden Werte (niedrigeren Wert und höheren Wert) auf zwei Textfelder erhalten. Diese Werte werden vom Benutzer eingegeben. Wenn ich die Zufallszahl erzeuge, erscheint in keinem Fall der höhere Wert. Zum Beispiel gibt der Benutzer 1 und 5 ein. Ich erzeuge wiederholt eine Nummer und in keinem Fall erscheint die Nummer 5. Es erscheint nur entweder 1 oder 2 oder 3 oder 4, nicht 5. Warum?

+0

auch erstellen Sie nicht 'Random' direkt vor der Verwendung. habe es im Feld. und verwenden Sie stattdessen –

Antwort

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(""); 

Dies wird da arbeiten, wenn es maxvalue Bereich nimmt von minValue bis maxValue-1 beginnt:

es schließen Sie tun müssen.

+0

Vielen Dank! Dies löst mein Problem und verdeutlicht meine Zweifel. –

Verwandte Themen