Generiert Zufällige Zahl im 2D-Array

Erstelle ich ein Spiel von Kriegsschiffen mit Java und ich habe Probleme bei der Generierung 2 zufällige zahlen, die nach dem Zufallsprinzip wählen Sie einen Ort auf der battleship board. Beispielsweise hat der computer nach dem Zufallsprinzip einen Platz auf der platine zu platzieren der Schiffe (und später zu Schießen).

Habe ich einen 2D-array:

int rows = 10;
int cols = 10;
char [][] grid;
grid = new char[rows][cols];

Und dann versucht, mehrere unterschiedliche Möglichkeiten, um den zwei Zufallszahlen im array, aber ich kann nicht ankommen es zu wirken. Hier ist ein Beispiel, was ich versucht habe:

int randomPos = (char) (Math.random() * (grid[rows][cols] + 1));

Fragen Sie mich bitte einige Fragen, wenn dies nicht sinnvoll.

Sean

Ist das für die KI-raten Standorten zu Bomben? Wenn dem so ist, wollen Sie nicht doppelte Standorte, so kann es am besten, um alle möglichen Standorte in einer Liste dann java.util.Collections.shuffle(List).
Taylor ja, aber ich hatte angenommen, ich hätte das gleiche zu tun, für die Auswahl an zufälligen Positionen für den computer, um Ihre Schiffe. Was tun?
Mischen Sie einfach eine neue Anordnung der Elemente in einer Liste in einer zufälligen Reihenfolge. Platzieren Schiffe auf dem Spielfeld ist eine ganz andere Sache. In diesem Fall wird der einfachste Ansatz ist die brute-force - nur weiter versuchen, die zufällige Orte und Richtungen, bis ein Schiff passt, wiederholen Sie die gleichen für alle Schiffe platziert werden.

InformationsquelleAutor Sean | 2011-07-29

Schreibe einen Kommentar