Napisać program, który:
• generuje (z użyciem generatora liczb pseudolosowych) 2-wymiarową tablicę (macierz) liczb rzeczywistych,
• zapisuje tablicę do pliku binarnego wg schematu: liczba wierszy (jako int), liczba kolumn (jako int),
kolejne elementy tablicy (jako ciąg liczb double),
• odczytuje macierz z pliku do tablicy w pamięci i wyświetla ją na ekranie w sposób sformatowany,
wierszami oraz wyświetla element macierzy o wartości maksymalnej (wraz z jego indeksami).
```public class bin {
public static void main (String[]args) throws IOException{
Random los=new Random();
double[][] mac= new double[8][4];
for (double[] mac1 : mac) {
for (int j = 0; j < mac1.length; j++) {
mac1[j] = los.nextDouble()*100;
System.out.println(mac1[j]);
}
}
String nazwapliku="zapisbinarny.txt";
try (DataOutputStream za = new DataOutputStream(new FileOutputStream(nazwapliku))) {
za.writeInt(mac.length);
za.writeInt(mac[8].length);
for (double[] mac1 : mac) {
for (int j = 0; j < mac1.length; j++) {
za.writeDouble(mac1[j]);
}
}
}
wyskakuje bład:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8