Perfetto, ho riscritto il codice ripartendo da zero.
Ho indubbiamente compiuto un nuovo passo verso la realizzazione del mio programma ma ho ancora qualche problema. Adesso riesco a stampare la matrice 9x9 e riusco a stampare correttamente tutta la prima colonna. Le altre colonne, invece, risultato tutte composte da 0. Probabilmente il programma non legge il mio comando "colonna++;" ma non riesco a capire il perché. Ho il timore di aver fatto qualche casino quando ho inserito due cicli while uno dentro l'altro (ma potrebbe anche essere qualche altra cosa).
Il codice, by the way, è il seguente:
E mi stampa la seguente matrice:codice:public class matrix2 { public static void main(String argv[]) { //Definiamo matrice e numeri casuali int[][] matrix = new int[9][9]; int[] random = {0,1,2,3,4,5,6,7,8}; //Riempiamo la matrice con i numeri casuali int colonna = -1; int riga = 0; int x = 8; int contatore = 0; //Rimpiamo le prime cinque colonne while (colonna<5) { while (riga<9) { matrix[colonna][riga] = random[x]; riga++; contatore++; if (contatore<5) { x--; } else { x++; } } colonna++; x--; } //Riempiamo le ultume quattro while (colonna<5) { while (riga<9) { matrix[riga][colonna] = random[x]; riga++; if (contatore<5) { x--; } else { x++; } } colonna++; x--; } //Stampiamo la matrix colonna = 0; riga = 0; while (colonna<9) { while (riga<9) { System.out.print(matrix[riga][colonna]); System.out.print(" "); riga++; } colonna++; riga = 0; System.out.println(); } } }
Post Scriptumcodice:8 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 4 0 0 0 0 0 0 0 0 5 0 0 0 0 0 0 0 0 6 0 0 0 0 0 0 0 0 7 0 0 0 0 0 0 0 0
Rispetto a prima ho eliminato per adesso la componente casuale che inserirò non appena riuscirò a stampare la matrice correttamente (dovrebbe bastare cambiare l'array definito random).
Grazie a tutti in anticipo.
Alessandro
8 0 0 0 0 0 0 0 0

Rispondi quotando