Hallo,
gibt es eine elegante Lösung um auszuschließen, dass mehrere integer, die mittels der math.random initialisiert wurden, die gleiche Zahl erhalten?
Meine Gedanken gehen in Richtung
Was sagt ihr zu den Vorschlägen? Da es im Verlauf mehr als zwei Spieler geben kann, bin ich unsicher, ob ich mit der if-Abfrage oder dem do-While so gut fahre.
Kennt ihr aber vllt. noch etwas "besseres", was verhindert, dass Math-Random die gleichen Zufallskoordinaten ausspuckt?
Grüße Yannik
gibt es eine elegante Lösung um auszuschließen, dass mehrere integer, die mittels der math.random initialisiert wurden, die gleiche Zahl erhalten?
Java:
// es sollen zwei Punktobjeke mit den Zufalls-Koordinaten x1/y1 und x2/y2 geben
for (int i = eingabe; i <= eingabe2; i++) { //eingabe und eingabe 2 kommen von der Konsole und geben den Spielfeldrahmen vor
x1 = (int) ((Math.random() * eingabe2)+1);
y1 = (int) ((Math.random() * eingabe1)+1);
x2 = (int) ((Math.random() * eingabe2)+1); // x2 soll != 1 sein, wenn
y2 = (int) ((Math.random() * eingabe1)+1); // y2 ==y1 ist (und vice versa)
java.awt.Point Spieler1 = new java.awt.Point(x1, y1); //
java.awt.Point Spieler2 = new java.awt.Point(x2, y2); //
}
Meine Gedanken gehen in Richtung
Java:
if (Spieler1 == Spieler2) {
... // noch keine konkrete Idee, Vorschläge sind natürlich sehr willkommen
}
oder vllt.
do {
// wie könnte ich das formulieren? vllt. einfach wieder so:
x2 = (int) ((Math.random() * eingabe2)+1);
y2 = (int) ((Math.random() * eingabe1)+1);
}
while (Spieler1 == Spieler2)
// die Punkte dürfen nicht die gleichen Koordinaten haben
Was sagt ihr zu den Vorschlägen? Da es im Verlauf mehr als zwei Spieler geben kann, bin ich unsicher, ob ich mit der if-Abfrage oder dem do-While so gut fahre.
Kennt ihr aber vllt. noch etwas "besseres", was verhindert, dass Math-Random die gleichen Zufallskoordinaten ausspuckt?
Grüße Yannik