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
allora estraiNonNulliDaDiagonalePrincipale(M) darà
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

  1. Qual è lo scopo del metodo `estraiNonNulliDaDiagonalePrincipale`?
  2. 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.

  3. Cosa succede se la matrice fornita non è quadrata?
  4. Se la matrice non è quadrata, il metodo restituisce null, come indicato nel controllo `if (M.length != M[0].length)`.

  5. Come viene gestita la situazione in cui non ci sono elementi non nulli sulla diagonale principale?
  6. Se non vengono trovati elementi non nulli, il metodo restituisce null; altrimenti, crea un array di dimensione appropriata per contenere gli elementi trovati.

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community