En este ejercicio vamos a consegir una matriz de dimensiones n x n dadas por el usuario.
Los elementos de la matriz tendran valores del 0 al 9 , si la matriz fuera de 10 elementos(10 x 10), obtendriamos el siguiente resultado, con el mismo número en las diagonales
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 |
| 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 |
| 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 |
| 4 | 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 |
| 5 | 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 |
| 6 | 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 |
| 7 | 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 |
| 8 | 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 9 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
La función mostrar simplemente muestra la matriz recorriendola fila a fila.
La función diagolnal calcula la suma de filas + columnas y lo asigna a cada elemento de la matriz, si es mayor que 10 el sumatorio de filas y columnas hará el sumatorio de filas y columnas modulo de 10 para asignarle este valor al elemento de la matriz.
Tenemos en cuenta que en Java los arrays se pasan por referencia.
package aplicacion1;
import java.util.Scanner;
/**
*
* @author Javi
*/
public class diagonales {
public static void mostrar(int mat[][]){
for (int i=0;i<mat.length;i++){
for(int j=0;j<mat[i].length;j++){
System.out.print(mat[i][j]);
}
System.out.println(" ");
}
}
public static int[][] diagonal(int mat[][]){
for (int i=0;i<mat.length;i++){
for(int j=0;j<mat[i].length;j++){
if(i+j>=10){
int total=(i+j)%10;
mat[i][j]=total;
}else{
mat[i][j]=i+j;
}
}
}
return mat;
}
public static void main(String[] args) {
Scanner miteclado = new Scanner(System.in);
System.out.println("cuantos filas tiene la matriz?");
int filas = miteclado.nextInt();
int matriz[][];
matriz = new int[filas][filas];
diagonal(matriz);
mostrar(matriz);
}
}

Espero que les haya gustado queda muy bonita 😆
