edutecnica

Esercizio 4        

Scrivi un programma per gestire una matrice quadrata massima 9x9 celle (m=9).
Il programma deve generare una matrice nxn con n≤m=9. Il programma deve invocare una procedura che restituisce un vettore di due posti contenente la somma degli elementi della diagonale maggiore e la somma degli elementi della diagonale minore.


import java.util.Scanner;
class diagonali{
public static void main (String args []){
Scanner in=new Scanner(System.in);

final int m=9;
int i,j,n;
int T[][] = new int[m][m];
int D[]={0,0};
//D[0]=diag.maggiore D[1]=diag.minore
do{
     System.out.print("n:");
     n=in.nextInt();
}while(n>m || n<2);
in.close();
//caricamento
for(i=0;i < n;i++)
     for(j=0;j < n;j++)T[i][j]=(int) (Math.random() *10);
//stampa a video
for(i=0;i < n;i++){
     for(j=0;j < n;j++)System.out.print(T[i][j]+" ");
     System.out.println();
}//fine stampa
diag(T,D,n);
System.out.println("ma:"+D[0]+" mi:"+D[1]);
}//fine__main

static void diag(int T[][],int D[],int no){
int i,j; j=0;
// diagonale maggiore
for(i=0;i < no;i++){
     D[0]+=T[i][j];
     j++;
}//fine diagonale maggiore
j=0;// diagonale minore
for(i=no-1;i>=0;i--){
     D[1]+=T[i][j];
     j++;
     }//fine diagonale minore
}//fine diag
}// fine classe