2D Array mit Füllung

MatzeKo

Mitglied
Hallo,
Ich wollte mal fragen ob mir jemand helfen könnte.
Ich bin nicht sehr gut in Java, jedoch soll ich ein
2D Array erstellen mit der mindest größe 10x10.
Er soll jedes Array Feld mit = ausgeben und dazu
soll aus M´s ein großes M enstehen in diesem Array.
Desweiteren soll ich es so schreiben das es für jede Größe ab
10x10 passt. Jedoch weiß ich noch nicht einmal richtig wie ich anfangen soll.

Erbitte um Hilfe. :)
MFG: Matze
 
Zuletzt bearbeitet:

MatzeKo

Mitglied
Hier habe ich mal ein 2D Array Erstellt, jedoch blicke ich nicht durch die Schleife.
Java:
public class ArrayBonus {

    public static void main(String[] args) {

	char[][] array = new char[10][20];

	for(int i=0;i<array.length; i++)
		for(int j=0;j<array.length; j++)
			array[i][j] = 
    }
}
 
Zuletzt bearbeitet von einem Moderator:

Saheeda

Top Contributor
Momentan iterierst du zweimal über die erste Dimension des Arrays.
Auf die zweite greifst du so zu:

Java:
for (int i = 0; i < array.length; i++) {
			for (int j = 0; j < array[i].length; j++) {
				System.out.println(array[i][j]);
			}
		}

ABER:
momentan ist dein Array noch leer. Du hast zwar die Größe definiert, aber keine Werte hinein getan.
 

MatzeKo

Mitglied
Ok mein Code sieht jetzt so aus wenn ich deine Schleife einbinde.
Java:
public class ArrayBonus {

    public static void main(String[] args) {

	char[][] array = new char[10][20];

for (int i = 0; i < array.length; i++) {
			for (int j = 0; j < array[i].length; j++) {
				System.out.println(array[i][j]);
			}
		}
    }
}


Jedoch weiß ich jetzt nicht wie ich angeben kann, was er für jedes Feld Standart mäßig eingeben soll.
 
Zuletzt bearbeitet von einem Moderator:

Saheeda

Top Contributor
WAS möchtest du denn ins Array schreiben? Du brauchst nur den entsprechenden Wert zuzuweisen:
Java:
array[i][j] = ??????
 
Zuletzt bearbeitet:

MatzeKo

Mitglied
Also habe jetzt nochmal nachgeguckt und habe schon mal das Gerüst fertig.
Danke dir Saheeda.

Java:
public class ArrayBonus {

    public static void main(String[] args) {

	char[][] array = new char[10][10];

for (int i = 0; i < array.length; i++) {
			for (int j = 0; j < array[i].length; j++) {
				array[i][j] = '=';
				System.out.print(array[i][j] +"\t");
			}
			System.out.println("");
		}
    }
}

Jetzt kommt halt das schwere meiner Meinung nach. Ich muss mit Schleifen, ein M bilden, das immer mittig steht. Und mit schleifen geht gar nichts bei mir. :( Jedoch soll das M für jede Größe des Arrays passen, also immer Zentral, egal welche Größe des Array und soll er so ausfüllen. Soll noch aus M´s bestehen.
 
Zuletzt bearbeitet von einem Moderator:

MatzeKo

Mitglied
Huhu, bin fast fertig mit der Aufgabe. :D
Also es sieht schon mal so aus:
= = M = = = = M = =
= = M M = = = M = =
= = M = M = = M = =
= = M = = = = M = =
= = M = = = = M = =
= = M = = = = M = =
= = M = = = = M = =
= = M = = = = M = =
= = M = = = = M = =
= = M = = = = M = =

Das habe ich mit
Java:
 public class ArrayBonus {


    public static void main(String[] args) {


	char[][] array = new char[10][10];


for (int i = 0; i < array.length; i++) {
			for (int j = 0; j < array[i].length; j++){
				array[i][j] = '=';
				}
			}
		for(int i = 0; i <array.length; i++){
			    array[i][2] = 'M';
			}
		for(int i = 0; i <array.length; i++){
			array[i][array[0].length-3]= 'M';
		}
		int x = 2;
		for(int i = 0; i < array[0].length/2-2;i++){
			array[i][x]= 'M';
			x++;
		}
				for(int i = 0; i < array.length; i++){
					for(int j = 0; j < array[i].length; j++){
						System.out.print(array[i][j]+ "\t");
						}
						System.out.println("");
					}
			}
		}
realisiert, doch leider habe ich Probleme damit denn zweiten Schrägstrich aus M´s in mein M zu bekommen.
 
Zuletzt bearbeitet von einem Moderator:

Joose

Top Contributor
[ot]
MatzeKo bitte verwende für den Java Code die
Java:
-Tags, dann bleibt eine gewissen Formatierung erhalten und es kommt ein Syntaxhighlighting dazu :)
Das Ganze ist einfacher zu lesen.
[/ot]
 

Saheeda

Top Contributor
@Matzeko

Ich würde es etwas anders lösen. Ich würde mir nur ein halbes M auf einer Array-Hälfte malen und den Inhalt dann auf die andere Seite spiegeln.
 
Zuletzt bearbeitet:

MatzeKo

Mitglied
@Saheeda

Das Problem ist das ich nicht gut gerade bin in Java. Und spiegeln kann ich nicht, es muss aber auf jedenfall mit for Schleifen gelöst werden.
 

Saheeda

Top Contributor
Du darfst nicht spiegeln oder du weißt nicht, wie du spiegeln sollst?

Wenn du nicht weißt wie:
Mal dir dein M im Array auf und zeichne die Spiegelachse ein. Wie verändern sich die Koordinaten?
 

MatzeKo

Mitglied
Ja, aber es steht drine das wir nur das anwenden sollen was wir gelernt haben.
Da wir leider das Spiegeln nicht gelernt haben, dürfen wir dieses nicht verwenden.
 

Neue Themen


Oben