Java: stampa diagonale escluso elemento centrale

Tema 71

Scrivere un metodo stampaDiagonaliTranneElementoCentrale che riceve in ingresso una matrice quadrata di interi M di dimensione dispari e stampa a video gli elementi di M presenti sulle due diagonali escluso l’elemento centrale.

Ad esempio, sia M la matrice così costituita

1 3 7 9 6
2 4 12 5 13
14 18 11 1 4
3 1 1 8 2
0 12 25 4 5

allora stampaDiagonaliTranneElementoCentrale(M)

 public class tema71{ // sarà un metodo void poiché non restituisce valori su cui effettuare ulteriori // operazioni oltre la stampa public static void estraiDiagonaliTranneElementoCentrale  (int[][] M) { //ci serviamo del procedimento usato nel metodo per estrarre gli elementi della //diagonale principale int i; for(i = 0; i < M.length; i++){ // volendo escludere l’elemento centrale, con l’istruzione “continue”, // obblighiamo il programma a procedere // oltre quando l’indice si troverà esattamente in prossimità di tale elemento if (i == M.length/2) continue; System.out.println(M[i][i]); //ci serviamo del procedimento usato nel metodo per estrarre gli elementi della //diagonale secondaria for(i = 0; i < M.length; i++){ // volendo escludere l’elemento centrale, con l’istruzione “continue”, // obblighiamo il programma a procedere // oltre quando l’indice si troverà esattamente in prossimità di tale elemento if (i == M.length/2) continue; System.out.println(M[i][M[0].length-1-i]); } }  /* Applicazione di prova */  public static void main (String[] args) { int[][] M = new int[][]{{1,3,7,9,6},{2,4,12,5,13},{14,18,11,1,4},{3,1,1,8,2},{0,12,25,4,5}}; estraiDiagonaliTranneElementoCentrale(M); } }     

Commenti

commenti