Erzeugen Sie ein nxn
Array vom Typ boolean und befüllen Sie es mit zufälligen Werten. Beachten Sie
dabei aber folgende Einschränkungen:
• Die durch das Array dargestellte quadratische Matrix soll symmetrisch sein.
• Die Werte auf der Hauptdiagonalen sollen immer false sein.
• 3 <= n <= 9 Geben Sie den Inhalt des Arrays in folgendem Format am Bildschirm aus (im Beispiel mit n=5):
Meine Frage:
Versteht irgendjmd. die Aufgabe ?
Ich hab den Anfang mal gemacht, aber ich versteh den letzten Punkt der Aufgabe nicht.
quadratische Matrix erstellen no prob. Befüllen auch no prob.
Das mit der Symmetrie hab ich so gelöst, das schon beim Erstellen immer auf Symmetrie geachtet wird, sonst wird das Array einfach wieder überschrieben, solange bis Symmetrie vorhanden ist. (Bedingung für Symmetrie: matrix[a] = matrix[a] )
So ich weiß nun nicht wie ich diese Bedingung in die DoWhile schleife quetsche, dafür bräuchte ich ja zwei for schleifen. Und will nicht alle möglichen Kombinationen abprüfen.
Array vom Typ boolean und befüllen Sie es mit zufälligen Werten. Beachten Sie
dabei aber folgende Einschränkungen:
• Die durch das Array dargestellte quadratische Matrix soll symmetrisch sein.
• Die Werte auf der Hauptdiagonalen sollen immer false sein.
• 3 <= n <= 9 Geben Sie den Inhalt des Arrays in folgendem Format am Bildschirm aus (im Beispiel mit n=5):
Meine Frage:
Versteht irgendjmd. die Aufgabe ?
Ich hab den Anfang mal gemacht, aber ich versteh den letzten Punkt der Aufgabe nicht.
quadratische Matrix erstellen no prob. Befüllen auch no prob.
Das mit der Symmetrie hab ich so gelöst, das schon beim Erstellen immer auf Symmetrie geachtet wird, sonst wird das Array einfach wieder überschrieben, solange bis Symmetrie vorhanden ist. (Bedingung für Symmetrie: matrix[a] = matrix[a] )
So ich weiß nun nicht wie ich diese Bedingung in die DoWhile schleife quetsche, dafür bräuchte ich ja zwei for schleifen. Und will nicht alle möglichen Kombinationen abprüfen.
Code:
public class Symmetrie {
public static void main(String[] args) {
int n = 5;
boolean[][] matrix = new boolean[n][n]; //nxn Matrix
// Matrix befüllen
do {
for (int i = 0; i < matrix.length; i++) {
for (int j = 0; j < matrix[i].length; j++) {
matrix[i][j] = Math.random() < 0.5; //Zufälliger boolean Wert
System.out.print(matrix[i][j] + " ");
}
System.out.println();
}
}while(matrix[0][1] != matrix[1][0] == true && matrix[0][2] != matrix[2][0] == true &&matrix[0][3] != matrix[3][0] == true && matrix[0][4] != matrix[4][0] == true);
}
}