package capitulo04.bloque08;

public class Ejercicio04 {
    public static void main(String[] args) {
        int[][] matrizdeNums = new int[6][10];
        boolean[] numerosUsados = new boolean[1001];

        for (int i = 0; i < matrizdeNums.length; i++) {
            for (int j = 0; j < matrizdeNums[0].length; j++) {
                int num;
                do {
                    num = (int) (Math.random() * 1001);
                } while (numerosUsados[num]);
                matrizdeNums[i][j] = num;
                numerosUsados[num] = true;
            }
        }

        int max = matrizdeNums[0][0];
        int min = matrizdeNums[0][0];
        int filaMax = 0, columnaMax = 0;
        int filaMin = 0, columnaMin = 0;

        for (int i = 0; i < matrizdeNums.length; i++) {
            for (int j = 0; j < matrizdeNums[0].length; j++) {
                if (matrizdeNums[i][j] > max) {
                    max = matrizdeNums[i][j];
                    filaMax = i;
                    columnaMax = j;
                }
                if (matrizdeNums[i][j] < min) {
                    min = matrizdeNums[i][j];
                    filaMin = i;
                    columnaMin = j;
                }
            }
        }

        System.out.println("Matriz:");
        for (int i = 0; i < matrizdeNums.length; i++) {
            for (int j = 0; j < matrizdeNums[0].length; j++) {
                System.out.print(matrizdeNums[i][j] + "\t");
            }
            System.out.println();
        }

        System.out.println("Valor máximo: " + max + " en la posición (" + (filaMax + 1) + ", " + (columnaMax + 1) + ")");
        System.out.println("Valor mínimo: " + min + " en la posición (" + (filaMin + 1) + ", " + (columnaMin + 1) + ")");
    }
}
