Bom, usei seu exercício como treino.
Primeiro, devemos ter em mente o seguinte:
1) O que é diagonal principal?
2) O que diagonal secundária?
Podemos encontrar essas respostas aqui: http://pt.wikipedia.org/wiki/Diagonal_de_uma_matriz
Depois o exercício pede para fazer a soma dos elementos acima e abaixo da diagonal principal. Vamos supor que temos a seguinte matriz:
0 4 7
2 3 5
4 2 1
A soma da diagonal principal seria: 0 + 3 + 1 = 4
A soma da diagonal secundária seria: 4 + 3 + 7 = 14
Soma dos elementos ACIMA da diagonal principal: 4 + 7 + 5 = 16
Soma dos elementos ABAIXO da diagonal principal: 2 + 4 + 2 = 8
Ficou claro isso?
Abaixo o código de como fiz:
import java.util.Scanner;
public class Teste {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Digite um valor para N: ");
int n = scanner.nextInt();
Vetor v = new Vetor();
v.criaMatriz(n);
v.calculaDiagonalPrincipal();
v.calculaDiagonalSecundaria();
v.somaAcimaDiagonalPrincipal();
v.somaAbaixoDiagonalPrincipal();
}
}
public class Vetor {
int[][] matriz;
public void criaMatriz(int n) {
int[][] array = new int[n][n];
for(int i = 0; i < array.length; i++) {
System.out.println();
for(int j = 0; j < array.length; j++) {
array[i][j] = (int) (Math.random() * 51);
System.out.print(array[i][j] + "\t");
}
matriz = array;
}
}
public void calculaDiagonalPrincipal() {
int diagonalPrincipal = 0;
for(int i = 0; i < matriz.length; i++) {
for(int j = 0; j < matriz.length; j++) {
if(i == j) {
diagonalPrincipal += matriz[i][j];
}
}
}
System.out.println("\n\nDiagonal Principal = " + diagonalPrincipal);
}
public void calculaDiagonalSecundaria() {
int diagonalSecundaria = 0;
for(int i = matriz.length - 1; i >= 0; i--) {
for(int j = matriz.length - 1; j >= 0; j--) {
if(i + j == matriz.length - 1) {
diagonalSecundaria += matriz[i][j];
}
}
}
System.out.println("Diagonal Secundária = " + diagonalSecundaria);
}
public void somaAcimaDiagonalPrincipal() {
int soma = 0;
for(int i = 0; i < matriz.length; i++) {
for(int j = 0; j < matriz.length; j++) {
if(i >= j) {
continue;
}
soma += matriz[i][j];
}
}
System.out.println("Produto dos elementos acima da Diagonal Principal: " + soma);
}
public void somaAbaixoDiagonalPrincipal() {
int soma = 0;
loop1:
for(int i = 0; i < matriz.length; i++) {
for(int j = 0; j < matriz.length; j++) {
if(i <= j) {
continue loop1;
}
soma += matriz[i][j];
}
}
System.out.println("Produto dos elementos abaixo da Diagonal Principal: " + soma);
}
}
Estude o código, entenda ele!
Qualquer dúvida poste aqui que lhe ajudamos.