Links und Funktionen
Sprachumschaltung

Navigationspfad
Sie sind hier: Startseite / Lehre / WS 2017/18 / Einführung in die Programmierung / Material / Magisch.java (unfertig)


Inhaltsbereich

Magisch.java (unfertig)

Magische Quadrate, Stand am Ende der Vorlesung vom 23.11.17

Java source code icon Magisch.java — Java source code, 1 KB (1250 bytes)

Dateiinhalt

public class Magisch {
    public static void main(String[] args) {
	int [][][] tests = {
	    {{16,3,2,13},
	     {5,10,11,8},
	     {9,6,7,12},
	     {4,15,14,1}},
	    {{16,2,3,13},
	     {5,10,11,8},
	     {9,6,7,12},
	     {4,15,14,1}}
	};
	for (square:tests) {
	    System.out.println("Test: " + ausgeben(square));
	    System.out.println("Ergebnis: " + magisch(square));
	}
    }

    public boolean magisch(int[][] square){
	int n = square.length; /* wir nehmen
				  quadratisches Format an */
	int zielsumme = n*(n*n+1)/2;
	boolean result = true;
        result = result && eintraegeKorrekt(square);
	for(int j = 0; i < n; j++) {
	    result = result && (zielsumme == summe(zeile(j,square)));
	}
	for(int i = 0; i < n; i++) {
	    result = result && (zielsumme == summe(spalte(i,square)));
	}
	result = result && (zielsumme == summe (diag1(square)));
	result = result && (zielsumme == summe (diag2(square)));	
	return result;
    }
    void ausgeben(int[][] square){}
    int[] zeile(int j, int[][] square){}
    int[] spalte(int j, int[][] square){}
    int[] diag1(int[][] square){}
    int[] diag2(int[][] square){}       
    int summe(int[] data){}
    boolean eintraegeKorrekt(){} /* pruefen ob genau die Zahlen 1..n^2 drinstehen*/
}

Artikelaktionen


Funktionsleiste