Concetti Chiave
- Il metodo creaArrayConElementiNonNulliDiagonalePrincipale estrae gli elementi non nulli dalla diagonale principale di una matrice quadrata di interi.
- Se la matrice non è quadrata, il metodo restituisce null per indicare l'input non valido.
- Un array temporaneo viene utilizzato per raccogliere gli elementi non nulli fino a trovare la dimensione corretta per il risultato finale.
- Se non ci sono elementi non nulli sulla diagonale principale, il metodo restituirà null.
- Il codice include un'applicazione di prova che illustra l'uso del metodo con una matrice di esempio.
Tema 55
Scrivere un metodo creaArrayConElementiNonNulliDiagonalePrincipale che riceve in ingresso una matrice quadrata di interi M e restituisce un vettore contenente gli elementi non nulli che si trovano sulla sua diagonale principale.Esempio di matrice
Ad esempio, sia M la matrice così costituita
| 0 | 2 | 3 |
| 2 | 3 | 4 |
| 4 | 5 | 6 |
| 3 | 6 |
public class tema55 { public static int[] estraiNonNulliDaDiagonalePrincipale (int[][] M){ // dichiariamo un array in cui trasferiremo gli elementi che soddisfano il // requisito int[] A; // controlliamo che la matrice sia quadrata if (M.length != M[0].length) return null; // approntiamo un array in cui faremo confluire inizialmente gli elementi che // soddisfano il requisito // assegnamo a questo array la dimensione M.length che potrebbe avere nel caso // in cui tutti gli elementi // soddisfino il requisito int[] V = new int[M.length]; // prepariamo un indice con cui scorrere l’array int indice = 0; for (int i = 0; i
Applicazione di prova
length; i++) A[ i ] = V[ i ]; } return A; } /* Applicazione di prova */ public static void main(String[] args){ int[][] M = new int[][]{{0,2,3},{2,3,4},{4,5,6}}; int[] V = estraiNonNulliDaDiagonalePrincipale (M); if (V != null){ for (int i = 0; i
Domande da interrogazione
- Qual è lo scopo del metodo `estraiNonNulliDaDiagonalePrincipale`?
- Cosa succede se la matrice fornita non è quadrata?
- Come viene gestita la situazione in cui non ci sono elementi non nulli sulla diagonale principale?
Il metodo ha lo scopo di ricevere una matrice quadrata di interi e restituire un vettore contenente gli elementi non nulli presenti sulla diagonale principale della matrice.
Se la matrice non è quadrata, il metodo restituisce null, come indicato nel controllo `if (M.length != M[0].length)`.
Se non vengono trovati elementi non nulli, il metodo restituisce null; altrimenti, crea un array di dimensione appropriata per contenere gli elementi trovati.