Concetti Chiave
- Il metodo eliminaUltimaColonnaEdEstraiElementiConIndiciEntrambiPariOdispari gestisce una matrice quadrata di interi, escludendo l'ultima colonna se la dimensione è dispari.
- Viene creata una nuova matrice che contiene solo gli elementi di M con indici di riga e colonna entrambi pari o entrambi dispari.
- Il metodo utilizza un ciclo per scorrere la matrice originale e un indice per raccogliere gli elementi validi nella nuova matrice.
- La nuova matrice ha la stessa quantità di righe di M, ma la metà delle colonne, a meno che non si escluda l'ultima colonna.
- Un esempio pratico dimostra come il metodo funzioni, visualizzando la matrice risultante dopo l'elaborazione.
Tema 105
Scrivere un metodo eliminaUltimaColonnaEdEstraiElementiConIndiciEntrambiPariOdispari che riceve una matrice quadrata di interi M e restituisce una sottomatrice escludendo l’ultima colonna se la dimensione è dispari e contenente solo gli elementi di M i cui indici di riga e di colonna sono entrambi pari oppure entrambi dispari.Esempio di matrice
Ad esempio, sia M la matrice così costituita
| 3 | 18 | 15 | 7 | 2 |
| 1 | 9 | 11 | 4 | 6 |
| 7 | 2 | 6 | 3 | 5 |
| 5 | 1 | 25 | 2 | 1 |
| 3 | 2 | 33 | 4 | 4 |
| 3 | 15 |
| 9 | 4 |
| 7 | 6 |
| 1 | 2 |
| 3 | 33 |
public class tema105{ public static int[][]eliminaUltimaColonnaEdEstraiElementiConIndiciEntrambiPariOdispari (int[][] M){ // dichiariamo una nuova matrice con righe pari a quelle di M e colonne pari a // metà di quelle di M int[][] nuovaMatrice = new int[M.length][M.length/2]; // prepariamo un intero che inizializzeremo in modo opportuno per eliminare // l’ultima colonna // nel caso in cui la dimensione di M sia dispari int discriminante; // verifichiamo se la dimensione della matrice è pari o dispari if (M.length % 2 == 1) // nel caso la dimensione sia dispari poniamo il valore del discriminante a 1 discriminante = 1; else discriminante = 0; // iniziamo a scorrere la matrice M riga per riga for (int i = 0; i visualizzaMatrice (int[][] M) { for (int i = 0; i
Applicazione di prova
println();} } /* Applicazione di prova */ public static void main(String[] args){ int[][] M = {{3,18,15,7,2}, {1,9,11,4,6}, {7,2,6,3,5}, {5,1,25,2,1}, {3,2,33,4,4}}; visualizzaMatrice (eliminaUltimaColonnaEdEstraiElementiConIndiciEntrambiPariOdispari (M)); } }
Domande da interrogazione
- Qual è lo scopo del metodo `eliminaUltimaColonnaEdEstraiElementiConIndiciEntrambiPariOdispari`?
- Come viene gestita l'ultima colonna nella matrice se la sua dimensione è dispari?
- Quali elementi vengono inclusi nella nuova matrice creata dal metodo?
Il metodo ha lo scopo di restituire una sottomatrice di una matrice quadrata di interi, escludendo l'ultima colonna se la dimensione è dispari e includendo solo gli elementi con indici di riga e colonna entrambi pari o entrambi dispari.
Se la dimensione della matrice è dispari, il metodo imposta un discriminante che consente di escludere l'ultima colonna durante l'iterazione per la creazione della nuova matrice.
Nella nuova matrice vengono inclusi solo gli elementi di M i cui indici di riga e colonna sono entrambi pari oppure entrambi dispari, come specificato nel ciclo di iterazione del metodo.