Muster mit Zweidimensionalen Arrays

Status
Nicht offen für weitere Antworten.

Chanü

Mitglied
Heyyyy, :)

Ich sitze im Moment vor folgender Aufgabe :

"Erzeugen Sie ein 2-dimensionales Array variabler Größe, welches das folgende Aussehen besitzt :

O # # #
# O # #
# # O #
# # # O

Implementieren Sie das rechte Muster mit Hilfe der Methode
quadraterstellen1(int n)
Hierbei gibt der Parameter n die größe des Arrays an. In dem gezeigten Fall die ist n = 4"

...und bis jetzt sieht mein Quelltext erst wie folgt aus :
Java:
static int[][] array1;

public static void quadraterstellen1(int n) {
  array1 = new int[n][n];
  for(int i = 0; i<n; i++) {
  }

Das dumme ist, dass ich bis vor kurzem noch genau wusste wie ich das machen wollte und zwar unter verwendung einer IF-Verzweigung (z.B. If (i==j) system.out.print ("#")). Ich hab das auch schon mehrmals so gemacht aber das ist schon 'ne ziemliche Weile her und ich hab leider total vergessen, wie ich das damals aufgeschrieben hab.

Wär echt super wenn mir jemand auf die Sprünge helfen könnte wie das weiter geht, wär euch echt super dankbar.

MgggfG

~ Chanchan :3

P.S. : Hoffe ich hab das halbwegs verständlich formuliert, ich hab keine Ahnung in wie weit man mit dem jetzigen Quelltext etwas anfangen kann oder wo ich damals das 'j' herbekommen hab (war der Spaltenwert des Arrays...)

P.P.S. : HILFE O:
 

OiM86

Mitglied
Java:
			for (int i=0; i<4;i++){
				 	for (int j=0;j<4;j++){
				 		
					 if(i==j){
						 a[i][j] = 1;
					 }
					
					System.out.print(a[i][j]+" ");
					}
				System.out.println();
				}
 

Chanü

Mitglied
Danke erstmal euch beiden [:

Mein Quelltext sieht jetzt so aus :
Java:
public class bbb {

   public static void main(String[] args) {
   int i;
   int j;
   static int[][] array1;
   for (int i=0; i<4;i++);{
                    for (int j=0;j<4;j++);{

                     if(i==j){
                         System.out.print ("O");
                     }else{
                         System.out.print ("#");
                     }
                    System.out.print(array1[i][j]+" ");
                    }
                System.out.println();
  }
   }
   }

funktionert aber immernoch nich ._.'

Hab leider keine Ahnung was ich falsch gemacht hab :<

Hoffentlich kann mir wer helfen :/

~Chanchan ♥
 
S

SlaterB

Gast
da ist ja mal ne Menge falsch,

Schleifenvariablen nicht vorher deklarieren,
; direkt nach dem Schleifenkopf vor dem { ist schlecht,
das Array ist null, erst erstellen,

wenn du mit System.out.print ("O"); etwas direkt ausgibst, dann brauchst du vielleicht gar kein Array?
entweder oder


edit:
ach ja, und static innerhalb einer Methode gibts nicht
 
Zuletzt bearbeitet von einem Moderator:

Leroy42

Top Contributor
Hab leider keine Ahnung was ich falsch gemacht hab :<

Bu mußt die 2. Dimensionen des Arrays erst noch initialisieren

Java:
public class bbb {

   public static void main(String[] args) {
   int i;
   int j;
   static char[][] array1 = new char[5][];
   for (int i=0; i<4;i++);{
                    array1[i] = new int[5];
                    for (int j=0;j<4;j++){
                        array1[i][j] = i==j ? 'O' : '#';

                    System.out.print(array1[i][j]+" ");
                    }
                System.out.println();
  }
   }
   }
 

ARadauer

Top Contributor
Java:
for (int i=0; i<4;i++){
         for (int j=0;j<4;j++){
            if(i==j){
               System.out.print("O");
            }else{
               System.out.print("#");
            }
         }
         System.out.println();
      }
 

OiM86

Mitglied
Soll das genau so aussehen :

O # # #
# O # #
# # O #
# # # O

Oder auch funktionieren wenn es z.B 10 *10 Felder sind ?
 

Leroy42

Top Contributor
Schleifenvariablen nicht vorher deklarieren,
Hast recht!
Java:
public class bbb {

   public static void main(String[] args) {
   static char[][] array1 = new char[5][];
   for (int i=0; i<4;i++);{
                    array1[i] = new int[5];
                    for (int j=0;j<4;j++){
                        array1[i][j] = i==j ? 'O' : '#';

                    System.out.print(array1[i][j]+" ");
                    }
                System.out.println();
  }
   }
   }
 

Chanü

Mitglied
Okay ... mein Problem sieht mittlerweile so aus :

Java:
public class quadrat1 {

static int[][] array1;
static int i;
static int j;

public static void quadraterstellen1(int n) {
  array1 = new int[n][n];
  for(int i = 0; i<n; i++) {
  } for(int j =0; i<n;i++){
    }
    if(i==j){
               System.out.print("O");
            }else{
               System.out.print("#");
            }
         }
    public static void main(String [] args) {
    quadraterstellen1(4);
    }
    }

Vorteil : Es läuft ! *-*
Nachteil : Es gibt nur '#' aus :/

Hab ganz neu angefangen und keine Ahnunng ob's besser oder schlechter ist als vorher... aber ich weiß auch gerade so was ein Array und eine Schleife sind, da werd ich vor sowas gesetzt... ich verzweifel so langsam will aber auch nich aufgeben... x.x'

Soll das genau so aussehen :

O # # #
# O # #
# # O #
# # # O

Oder auch funktionieren wenn es z.B 10 *10 Felder sind ?

Ist nur ein Beispiel, sollte auch bei 10*10, 11*11 oder 13*103 funktionern :/

NOCHMAL : Ein riesengroßes Danki an alle die ihre Zeit schon mit mir verschwendet haben <3

~ DAU ~ Chanchan ^-^

Edit : Mja mir fällt auf ich hab die Schleifenvariablen wieder deklariert. Tu ich das nich gibt er immer aus, dass ich irgendwelche unbekannten Objekte verwenden würde oder so etwas ._.
 
S

SlaterB

Gast
sauber formatiert sieht dein Code derzeit so aus:
Java:
    static int[][] array1;
    static int i;
    static int j;

    public static void quadraterstellen1(int n)
    {
        array1 = new int[n][n];
        for (int i = 0; i < n; i++)
        {
        }
        for (int j = 0; i < n; i++)
        {
        }
        if (i == j)
        {
            System.out.print("O");
        }
        else
        {
            System.out.print("#");
        }
    }

    public static void main(String[] args)
    {
        quadraterstellen1(4);
    }
in und j im if sind die statischen Variablen, i und j in den leeren Schleifen was anderes,
nie Variablen doppelt deklarieren..
 

eRaaaa

Top Contributor
noch ein kleiner zusatz:

- auch wenn das System.out.println jetzt wahrscheinlich erstmal nur zu testzwecken eingesetzt wird, du sollst ja eig. die werte später in das array schreiben -> int array`s sind da die falsche wahl !
 

Chanü

Mitglied
in und j im if sind die statischen Variablen, i und j in den leeren Schleifen was anderes,
nie Variablen doppelt deklarieren..

Achso okay :)
Das heißt er hat die falschen Variablen verglichen... erklärt mir schonmal die Ausgabe ^^
Ich hab die Dekleration (der statischen Variablen) wieder rausgenommen.
Ich ging nur davon aus, dies machen zu müssen weil ohne die beiden jetzt vom Compiler wieder ausgegeben wird :"cannot find symbol" und das bezieht sich eben auf i und j die jetzt nurnoch in der Schleife stehen.
Was kann ich also machen, damit mein Compiler die Beiden anerkennt ? o:

P.S. : Vielen Dank für's Einrücken, werd ich in Zukunft drauf achten, sieht wirklich besser aus ^-^
 
S

SlaterB

Gast
das if muss in die Schleifen rein, die auch verschachtelt sein müssen,
dahinter macht es keinen Sinn und die Variablen i und j sind da richtigerweise nicht mehr bekannt,

gibt doch einige funktionierende Beispiele hier im Thread, z.B. 16:47
 

Chanü

Mitglied
okay wieder ein Schritt weiter (=

Java:
public class quadrat1 {

static int[][] array1;

public static void quadraterstellen1(int n)
{

  array1 = new int[n][n];

  for(int i = 0; i<n; i++) {

    for(int j =0; i<n;i++)
    {

      if(i==j)
      {
        System.out.print("O");
      }else{
        System.out.print("#");
      }
    }
}

public static void main (String [] arguments)
{
  quadraterstellen1(4);
}
}

Jetzt wird bei mir allerdings ein Fehler in der main-Methode angezeigt, dieser war vorher jedoch nich da... und eigentlich hab ich die ja garnicht verändert :/

Woran könnt's liegen ? :/

~Chanchan
 

eRaaaa

Top Contributor
zähle mal die offenen und schließenden klammern in der methode quadraterstellen1

:D

achja und in deiner 2. for schleife solltest du nicht i<n und i++ aufrufen, sondenr j !
und am ende der 1. for schleife, muss noch ein return rein (z.b. System.out.println() ) ;
 
Zuletzt bearbeitet:

Chanü

Mitglied
Okay, vielen Dank xD
(peinliche fehler -^^-)

dann sieht das ganze jetzt so aus :
Java:
public class quadrat1 {

static int[][] array1;

public static void quadraterstellen1(int n)
{

  array1 = new int[n][n];

  for(int i = 0; i<n; i++)
  {

    for(int j =0; j<n;j++)
   {

      if(i==j)
      {
      System.out.print("O");
      }else{
           System.out.print("#");
           }


   }
  System.out.println();
  }

public static void main (String [] arguments)
{
  quadraterstellen1(4);
}
}
}

Die main-Methode wird aber weiterhin als falsch angegeben :/

~Chanüleinchen
 

eRaaaa

Top Contributor
ich wiederhole mich: zähle die offenen und schließenden klammern in der methode quadraterstellen1
(5 auf, 4 zu, da fehlt eine schließende klammer!!! (bzw: sie ist woanders hingewandert)
 
Zuletzt bearbeitet:

Chanü

Mitglied
Du hattest Recht, tut mir leid war ich nachsichtig :/
Aber wow es klappt *-* !!!
Endlich, ich sitz da seit Tagen dran *-*

DANKE DANKE DANKE

an alle die so viel Geduld aufgebracht haben das sogar jemandem wie mir zu erklären [:

Ihr seid toll <3

~ Chanü :3
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
E Durch Muster in Array iterieren Java Basics - Anfänger-Themen 3
B Dekorator Muster - Irgendwas stimmt hier doch nicht? Java Basics - Anfänger-Themen 4
frager2345 Singleton-Muster Java ->Nur eine Instanz einer Klasse erzeugen können Java Basics - Anfänger-Themen 45
frager2345 Java Singleton Muster -> Methode für Konstruktor mit Parametern Java Basics - Anfänger-Themen 3
1 Wie dieses Muster am einfachsten erkennen? Java Basics - Anfänger-Themen 32
H Muster mit verschachtelten Schleifen kreieren. Java Basics - Anfänger-Themen 2
Yasemin bahar Muster erkennen Java Basics - Anfänger-Themen 13
C Erste Schritte Muster ausgeben in der Konsole - großes V Java Basics - Anfänger-Themen 5
U Muster in einem Array erkennen Java Basics - Anfänger-Themen 8
F Quadrat Mit Muster Java Basics - Anfänger-Themen 15
J Muster und Schleifen Java Basics - Anfänger-Themen 33
R 2D Arrays mit vorgegebenem Muster Java Basics - Anfänger-Themen 2
E Arrays nach best Muster füllen Java Basics - Anfänger-Themen 4
K String nach bestimmtem Muster parsen Java Basics - Anfänger-Themen 3
P Sägezahn Muster Programm Java Basics - Anfänger-Themen 2
C Array Muster erzeugen Java Basics - Anfänger-Themen 2
J Erste Schritte zweidimensionales Array Muster befüllen. Java Basics - Anfänger-Themen 4
J Strukturierung mit MVC Muster Java Basics - Anfänger-Themen 20
J Array Muster mit true und false Java Basics - Anfänger-Themen 6
C Muster programmieren Java Basics - Anfänger-Themen 4
C Muster programmieren Java Basics - Anfänger-Themen 4
E Muster auf der Konsole ausgeben lassen (Schleifen) Java Basics - Anfänger-Themen 7
arti28 Erste Schritte For-Schleifen und While-Schleifen, String als Muster ausgeben. Java Basics - Anfänger-Themen 3
L Java Muster Java Basics - Anfänger-Themen 1
Todesbote String auf Muster überprüfen Java Basics - Anfänger-Themen 19
C Array Zickzack Muster Java Basics - Anfänger-Themen 3
P RegEx Muster mehrfach treffen Java Basics - Anfänger-Themen 2
M Muster erkennen. Idee: Fassade. Java Basics - Anfänger-Themen 3
Dit_ Regex | Muster {a}{b}{c} Java Basics - Anfänger-Themen 7
pindakaas Compiler geht nicht (Dekorator Muster) Java Basics - Anfänger-Themen 18
M Datentypen Strings nach Muster auslesen und verarbeiten Java Basics - Anfänger-Themen 5
S X Zeichnen als Muster ausgeben Java Basics - Anfänger-Themen 5
R Muster ausgeben Java Basics - Anfänger-Themen 4
H Muster ausgeben Java Basics - Anfänger-Themen 25
G String auf Muster prüfen Java Basics - Anfänger-Themen 5
O useDelimiter / Muster im Parameter (Pattern) Java Basics - Anfänger-Themen 6
S OOP Warum gleiche Instanz der Klasse? (Factory-Muster) Java Basics - Anfänger-Themen 13
L Sägezahn Muster Java Basics - Anfänger-Themen 4
0 Applet mit folgendem Muster erstellen Java Basics - Anfänger-Themen 12
P Fragen zum Observer Muster und Datenbanken Java Basics - Anfänger-Themen 2
Z Muster Java Basics - Anfänger-Themen 9
J nach Muster in String suchen Java Basics - Anfänger-Themen 4
M Problem bei verschachtelter for-Schleife bei zweidimensionalen Arrays Java Basics - Anfänger-Themen 3
L Tiefe Kopie einer Zeile eines zweidimensionalen Arrays Java Basics - Anfänger-Themen 1
I Zeilenweises Einlesen eines zweidimensionalen Arrays Java Basics - Anfänger-Themen 4
C Buchstabe "K" im zweidimensionalen Array programmieren Java Basics - Anfänger-Themen 1
C Umgekehrtes "A" im zweidimensionalen Array programmieren Java Basics - Anfänger-Themen 9
S Länge eines zweidimensionalen Feldes Java Basics - Anfänger-Themen 3
S Zeichen aus Strings auslesen und in zweidimensionalen Reihungen positionieren. Java Basics - Anfänger-Themen 10
M Problem mit zweidimensionalen Arrays Java Basics - Anfänger-Themen 3
T Elemente aus zweidimensionalen Array löschen Java Basics - Anfänger-Themen 6
P Spiel im Schiffe-Versenken Stil, Problem mit Erstellung des zweidimensionalen ARRAYs Java Basics - Anfänger-Themen 7
D Auf Zeilen eines zweidimensionalen Arrays zugreifen Java Basics - Anfänger-Themen 3
G for-Schleife in zweidimensionalen Array ausgeben Java Basics - Anfänger-Themen 2
N Beschriftung eines zweidimensionalen Buttons Java Basics - Anfänger-Themen 9
V Zweidimensionalen Array initialisieren Java Basics - Anfänger-Themen 3
G Länge eines zweidimensionalen array Java Basics - Anfänger-Themen 2
M Länge eines Arrays als Variable speichern möglich? Java Basics - Anfänger-Themen 14
R Liste und Arrays Java Basics - Anfänger-Themen 12
N mehrdimensionale arrays Java Basics - Anfänger-Themen 12
E Arrays in einer ArrayList miteinander vergleichen Java Basics - Anfänger-Themen 12
Kingdako Wie löse ich eine Mathematische Formel mit Arrays und Schleifen? Java Basics - Anfänger-Themen 32
D Wie kann man in Java nach Arrays auf Duplikate prüfen Java Basics - Anfänger-Themen 12
S Hilfe bei Praktischen Aufgaben von Arrays Java Basics - Anfänger-Themen 39
T Objekte mit arrays erstellen Java Basics - Anfänger-Themen 6
J Mehrdimensionale Arrays Java Basics - Anfänger-Themen 2
pc pc pc pc pc letztes Element eines Arrays n Java Basics - Anfänger-Themen 3
M Arrays Java Basics - Anfänger-Themen 3
Ostkreuz Wert von Arrays summieren Java Basics - Anfänger-Themen 1
Ostkreuz Summieren von Arrays Java Basics - Anfänger-Themen 4
javaBoon86 Arrays 2 Dimension Werte ausgeben Java Basics - Anfänger-Themen 15
paulen1 Best Practice "Unchecked Assignment" Warnung beim erstellen eines 2D Arrays of Arraylists Java Basics - Anfänger-Themen 2
B bei 2 Arrays Anzahl gleicher Elemente vergleichen? Java Basics - Anfänger-Themen 49
JustAProgrammer Ein Dreieck mit Arrays erstellen Java Basics - Anfänger-Themen 2
TheSepp Nur Arrays ausgeben, die Werte zugewiesen haben. Java Basics - Anfänger-Themen 4
volcanos Addition -> List<Integer> mit Arrays.asList() versus List<Integer>ArrayList<>() Java Basics - Anfänger-Themen 14
ArrayList mit unbekannter Menge an Arrays die Arrays vergleichen Java Basics - Anfänger-Themen 9
D Arrays an replaceAll-Methode übergeben Java Basics - Anfänger-Themen 12
rosima26 Geordnete Arrays ausgeben Java Basics - Anfänger-Themen 31
D Inhalt eines Arrays ausgeben Java Basics - Anfänger-Themen 7
A Jedes zweite Element eines Arrays entfernen Java Basics - Anfänger-Themen 30
C Zwei Arrays addieren und ausgeben Java Basics - Anfänger-Themen 3
E Zinsrechnung mithilfe von Arrays Java Basics - Anfänger-Themen 12
LePetitChat1 Arrays - NullPointerException? Java Basics - Anfänger-Themen 14
H Arrays: Größten Zahlen Unterschied herausfinden Java Basics - Anfänger-Themen 20
H Arrays befüllen Java Basics - Anfänger-Themen 43
C60 Methoden Main-Methode erkennt meine Arrays nicht. Java Basics - Anfänger-Themen 7
D Arrays Java Basics - Anfänger-Themen 9
C Java Arrays - Ausgabe in Methode Java Basics - Anfänger-Themen 12
R While-Loop der die Einträge eines Arrays in umgekehrter Reihenfolge anzeigt Java Basics - Anfänger-Themen 3
N Arrays Java Basics - Anfänger-Themen 5
W n verschiedene Arrays zufällig ausgeben - mit der Random-Klasse? Java Basics - Anfänger-Themen 8
U zwei 2D arrays auf gleich sein überprüfen Java Basics - Anfänger-Themen 14
melaniemueller Lagerverwaltung erstellen - mehrdimensionale Arrays Java Basics - Anfänger-Themen 62
C initialisieren eines arrays richtiger Größe und mit geeignetem Datentyp Java Basics - Anfänger-Themen 26
Bademeister007 Elemente aus zwei verschiedenen Arrays miteinander vergleichen und gegeben falls entfernen Java Basics - Anfänger-Themen 14
A Arrays aufsummieren Java Basics - Anfänger-Themen 11
C Wie 2 Arrays zusammenfügen und sortieren? Java Basics - Anfänger-Themen 11
S Arrays aneinanderketten Java Basics - Anfänger-Themen 20
Sinan Arrays auflisten ohne Wiederholung Java Basics - Anfänger-Themen 28

Ähnliche Java Themen

Neue Themen


Oben