Problem mit random()
-
Hi,
Ich hab ne Methode, die Zufallszahlen erzeugen soll, und diese in ein Array abspeichert:
public int[] Gener_Zufall(int Anz_Wuerfel) { int[] Zufall=new int[Anz_Wuerfel]; Random rand = new Random(); for(int i=0;i<Anz_Wuerfel;i++) { Zufall[i]=rand.Next(5)+1; } return Zufall; }
Nun mein Prob, ich muss diese Funktion fuer 2 arrays aufrufen, nur sind die Zufallszahlen in beiden Arrays dann gleich. Hier der Aufruf:
Sys_Wuerfel.Set_Befr_Wuerfel (Gener_Zufall(Anz_Wuerfel_Befr)); Sys_Wuerfel.Set_Bese_Wuerfel (Gener_Zufall(Anz_Wuerfel_Bese));
Nun meine Frage, wie kann ich das umgehen?
Kann man es wie in C machen, dass man die Zufallszahlen Per TIME erzeugt?
-
Beispiel aus dem C# Codebook:
public byte[] RandomNumbers(int count, byte min, byte max) { RNGCryptoServiceProvider csp = new RNGCryptoServiceProvider(); byte[] numbers = new Byte[count]; csp.GetBytes(numbers); double divisor = 256F / (max - min + 1); if (min > 0 || max < 255) for (int i = 0; i < count; i++) numbers[i] = (byte)((numbers[i] / divisor) + min); return numbers; }
-
Ich habe nun eine Lösung gefunden:
Ich erzeuge den Random schon am anfang und uebergebe dann rand einfach mit.