Linguaggio Java: vettore riga da tutte le colonne di una matrice
Tema 59
Scrivere un metodo creaArrayEstraendoTuttiGliElementiPerColonna che riceve in ingresso una matrice di interi M e crea un array estraendo tutti gli elementi della matrice colonna per colonna.
1 | 2 | 3 | 7 |
4 | 5 | 6 | 8 |
7 | 8 | 9 | 3 |
8 | 6 | 5 | 4 |
allora creaArrayEstraendoTuttiGliElementiPerRiga(M) darà
1 | 4 | 7 | 8 | 2 | 5 | 8 | 6 | 3 | 6 | 9 | 5 | 7 | 8 | 3 | 4 |
public class tema59 { public static int[] creaArrayEstraendoTuttiGliElementiPerColonna (int[][] M) { // approntiamo un array di dimensione data dal seguente calcolo, dovendo // inserire tutti gli elementi di M int[] V = new int[M.length * M.length]; // prepariamo un indice per scorrere l’array int indice = 0; // in questo caso poniamo come ciclo più esterno quello delle colonne for(int j = 0; j < M[0].length; j++) { for(int i = 0; i < M.length; i++) { V[indice] = M[i][j]; indice++;} } return V; } public static void visualizzaArray (int[] V) { for (int i = 0; i < V.length; i++) System.out.print(V[i] + " "); System.out.println(); } /* Applicazione di prova */ public static void main (String[] args) { int[][] Q ={ {1, 2, 3, 7}, {4, 5, 6, 8}, {7, 8, 9, 3}, {8, 6, 5, 4} }; visualizzaArray (creaArrayEstraendoTuttiGliElementiPerColonna (Q)); } }
Commenti
20 Maggio 2015