Input/Output Magisches Quadrat Rechts Formatieren

Hi Leute,

ich habe ein Problem bei der Ausgabe des Magischen Würfels.
Meine Ausgabe sieht ungefähr so aus:
| 17 | 24 | 1 | 8 | 15 |
| 23 | 5 | 7 | 14 | 16 |
| 4 | 6 | 13 | 20 | 22 |
| 10 | 12 | 19 | 21 | 3 |
| 11 | 18 | 25 | 2 | 9 |
Kann mir jemand sagen wie ich meinen code verändern muss damit er rechtsbündig formatiert ist?

Java:
public class magic extends Environment {

  public static void main(String[] args) {
    new magic().mainProgram(args);
  }

  void mainProgram(String[] args) {
  int n = 0;
	int i = 1;
	int x;
	int zeile = 0;
	int spalte = 0;
	
	System.out.print("Bitte geben Sie die Ordnung n, n>2 "
			+ "und n ungerade ein: ");
	n = stdin.readInt(); // Ordnung einlesen 
	
	// Bei falscher eingabe erneut eingeben bzw. einlesen
	while(n<3 || n==1 || n%2==0){ 
		System.out.print("Der Wert denn Sie eingeben "
		+ "muss ungerade sein! Bitte geben Sie einen neuen Wert ein: ");
		n = stdin.readInt();
	}
	
	int [][] feld = new int [n][n];
	zeile = 0;
	spalte = n/2;
	
	// Die 1 kommt immer in die mitte der der ersten Zeile.
	if(i==1){
		feld[0][n/2]=i;
	}
	
	// Jetzt wird das Array befüllt
	while(i < n*n) {
		if(i%n == 0){
			i++;
			zeile++;
			feld[zeile][spalte]=i;
		} 
		else {
			i++;
			zeile--;
			spalte++;
			spalte=spalte%n;
			zeile=(zeile+n)%n;
			feld[zeile][spalte]=i;
		}
	}
		// Array wird hier ausgegeben
		
		for(zeile=0; zeile<n; zeile++){
			for(spalte=0; spalte<n; spalte++){
				x=feld[zeile][spalte];
				System.out.print(" | ");
				System.out.print(x);
				
				if(spalte==n-1){
					System.out.println("  | ");
				}
			}
		}
		
		int magische_zahl=0;
		magische_zahl=(n*((n*n)+1))/2;
		System.out.println("Die Magische Zahl ist: "+magische_zahl);
	
	
}
}

Dankeschön für eure hilfe im vorraus
 
Zuletzt bearbeitet:

InfectedBytes

Top Contributor
Du könntest printf anstatt print nutzen.
Java:
System.out.printf("%2d", x);
Dadurch werden x solange leerzeichen vorangestellt, bis die Länge 2 beträgt.
Code:
Bei x=2 ist die Ausgabe:
 2
Bei x=42:
42
 

Hottentotte

Mitglied
Wie wäre es mit folgender Zeile 57:
Java:
System.out.print(x<10 ? " " + x : x);
und in Zeile 48:
Java:
System.out.println(" |");
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
L Magisches Quadrat und Backtracking Java Basics - Anfänger-Themen 19
S Magisches Quadrat Java Basics - Anfänger-Themen 9
E Magisches Quadrat - wie bring ich des fertig? Java Basics - Anfänger-Themen 2
G Magisches Dreieck Java Basics - Anfänger-Themen 2
A 2D Array Magisches Viereck Java Basics - Anfänger-Themen 4
L Magisches Viereck - Probleme mit Arrays Java Basics - Anfänger-Themen 3
Ü Methode soll Quadrat aus der Summer zurückgeben Java Basics - Anfänger-Themen 10
MaZ Quadrat Schleife(Pyramide) Java Basics - Anfänger-Themen 9
xXDasFischXx quadrat Java Basics - Anfänger-Themen 1
F Quadrat Mit Muster Java Basics - Anfänger-Themen 15
J Quadrat mit Diagonalen Java Basics - Anfänger-Themen 3
J Einfaches Quadrat auf der Console ausgeben lassen Java Basics - Anfänger-Themen 7
K Erste Schritte Nenner zum Quadrat Java Basics - Anfänger-Themen 10
M Quadrat zeichnen einfach bitte! Java Basics - Anfänger-Themen 2
S math Methoden in Java (quadrat) Java Basics - Anfänger-Themen 7
F Das magische Quadrat Java Basics - Anfänger-Themen 8
J Negatives Quadrat bei hohen Basen Java Basics - Anfänger-Themen 11
F Rechteck/Quadrat getroffen? Java Basics - Anfänger-Themen 2
K Rechteck/Quadrat Java Basics - Anfänger-Themen 5
P Quadrat und Wurzel HILFE!!!!! Java Basics - Anfänger-Themen 13
T Quadrat mit Array?? Java Basics - Anfänger-Themen 9
G Quadrat in Java Java Basics - Anfänger-Themen 9
J Quadrat mit variabler Kantenlänge Java Basics - Anfänger-Themen 3
G Quadrat mit Diagonalen ausgeben Java Basics - Anfänger-Themen 4
K Farbenspiel : Quadrat verschwindet,wenn Fenster inaktiv ist Java Basics - Anfänger-Themen 13
richis-fragen Mausrad logitech kann links und rechts klick wie in java abragen. Java Basics - Anfänger-Themen 15
N Hey Leute und zwar versuche ich gerade ein 2D Spiel zu Programmieren aber die Figur will sich nicht nach links oder rechts bewegen :( Java Basics - Anfänger-Themen 12
izoards Sortier Algorithmus für Bounding Box Elememte Links nach Rechts und von Oben nach Unten Java Basics - Anfänger-Themen 33
S Animation/links-rechts Java Basics - Anfänger-Themen 9
O Naives links rechts einfügen in ADT Baum Java Basics - Anfänger-Themen 8
L JavaFx ListView rechts abgeschnitten Java Basics - Anfänger-Themen 0
C eine diagonale von rechts nach links im 2d-array Java Basics - Anfänger-Themen 1
M rechts shift (>>>) einer negativen Zahl Java Basics - Anfänger-Themen 10
T JScrollPane soll rechts gescrollt gezeichnet werden Java Basics - Anfänger-Themen 5
S HEX oder String rotieren lassen (rechts raus, links rein) Java Basics - Anfänger-Themen 3
P JFrame rechts am Bildschirmrand anzeigen Java Basics - Anfänger-Themen 3
N In einer JToolbar das Icon ganz rechts anordnen Java Basics - Anfänger-Themen 5
M Strings links, rechts und centriert ausrichten Java Basics - Anfänger-Themen 12
Z Applet text der sich von links nsch rechts bewegt Java Basics - Anfänger-Themen 3
C mouseDown (Event e, int x, int y) rechts oder linksklick ? Java Basics - Anfänger-Themen 10

Ähnliche Java Themen

Neue Themen


Oben