Ein nettes Beispiel für ein zweidimensionales Array ist das Spiel Schiffe versenken. Sicherlich könnte man die Felder auch von 1 bis 100 durchnummerieren, aber viel praktischer ist es, wenn man, ähnlich wie beim Koordinatensystem in Mathe, x- und y-Koordinaten vergibt. Java unterstützt dies. Vorüberlegungen
Schauen wir uns aber zunächst die Klassen an, die benötigt werden: Gebiet soll ein einzelnes Feld auf dem 10x10 Gebiete großen Spielfeldes sein. Ein Gebiet kann ein Teil eines Schiffs beherbergen. Ein Gebiet kann beschossen worden sein. Dann ist es markiert (denn dort kann kein Schiff mehr stehen). Aus dieser Idee resultieren folgende Klassen:
Das Spielfeld hat im Wesentlichen die Aufgabe, die Gebiete zu verwalten. Daher bekommt es nur eine Eigenschaft: feld ist ein zweidimensionales Array vom Typ Gebiet. Schiffe versenken zweidimensionales array de. Das "zweidimensional" wird durch zwei leere eckige Klammerpaare angedeutet: Gebiet [] []. public class Spielfeld {
// Eigenschaften
private Gebiet [][] feld;
// Konstruktor
public Spielfeld () {
feld = new Gebiet [ 10][ 10];
// Anfangswerte setzen für alle 100 Felder
for ( int i = 0; i < 10; i ++) {
// senkrecht
for ( int j = 0; j < 10; j ++){
//waagerecht
feld [ j][ i]= new Gebiet ();}}
feld [ 1][ 2].
- Schiffe versenken zweidimensionales array de
- Schiffe versenken zweidimensionales array 1
Schiffe Versenken Zweidimensionales Array De
Zitat von BLUESCREEN3D
Das sind ja gleich mehrere Aufgabenteile. Mach erstmal nur das hier:
Gibt es eine Klasse "Schiff"?
Schiffe Versenken Zweidimensionales Array 1
In dem Array $_GET werden alle Parameter gespeichert, die in der Internetadresse mit
übergeben werden. Zum Beispiel:
Dann habt Ihr in $_GET["farbe"] den Wert "gruen" und in $_GET["gegenstand"] das Wort
"Auto" gespeichert. Achtung: viele programmieren mit der Einstellung am Apachen "Globals = an". Dies bewirkt, dass man die Parameter aus $_POST und aus $_GET nicht aus diesem Array
abfragen muss. In diesem Fall mit der Internetadresse und den $_GET Parametern wäre
auch noch die Variable $farbe mit "gruen" und die Variable $gegenstand mit "Auto"
belegt. Bitte nicht angewöhnen die Variablen direkt zu verwenden! Immer über $_POST und das $_GET Array abfragen! Es ist unsauber programmiert, birgt Sicherheitsrisiken und auf dem nächsten Server läuft
euer Skript dann warscheinlich sowieso nicht mehr, weil die Globals = aus sind. Schiffe versenken zweidimensionales array der. Man sollte wenn man
Informationen von aussen bekommt diesen auch nie vertrauen. Sicherheitsabfragen sollte man sich
angewöhnen und somit mit Manipulationen von aussen rechnen!
Viertens: function SchussAuf. Du bist schon beim Feuern und mir hältst du vor, dass ich schon an die Anzeige denke. Wie wäre es wenn der TE erst die Schiffe automatisch auf dem Feld platziert, die den Regeln entsprechen? Das Feuern und anfragen ob ein Schiff getroffen wurde ist nicht wirklich kompliziert. Fünftens: ich denke mir die Regeln die du favorisierst sind komplizierter als sie sein müssen. In der Computervariante des Spiels dürfen sich Schiffe berühren, sogar auf Stoß. Schiffe versenken zweidimensionales array 1. Beim Programmieren hat man andere Möglichkeiten als auf dem Papier. Diese Regeln, die eigentlich nur für die Papier-Variante gelten, machen das für den TE komplizierter als es sein müsste.