Hab die Aufgabe:
Zum Testen implementieren Sie eine Methode, die eine zufällige m×n Matrix mit Zahlen von 0-9
erzeugt: static int[][] randomMatrix(int m, int n). Zum Erzeugen der Zufallszahlen
verwenden Sie die bereits aus der vorigen Übung bekannte Methode Math.random().
In der main-Methode fragen Sie die Zeilenanzahl (m) und Spaltenanzahl (n) vom Benutzer ab,
erzeugen anschließend eine zufällige Matrix mit der entsprechenden Größe und geben die Matrix
und die transponierte Matrix aus. Verwenden Sie zur Ausgabe einer Matrix auch eine eigene
Methode.
Achten Sie darauf, dass Ihr Programm auch mit nicht existierenden (null) und leeren Matrizen
(Zeilenanzahl 0) funktioniert.
Hier wär der code dazu aber irgendwie gibt er mir zwei fehlerausgaben und ich weiß nicht wieso...:
Hier Fehlerausgabe:
Rows:
4
Coloms:
6
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4
at transponiereneinermatrix.Main.randomMatrix(Main.java:16)
at transponiereneinermatrix.Main.main(Main.java:32)
Java Result: 1
BUILD SUCCESSFUL (total time: 10 seconds)
Zum Testen implementieren Sie eine Methode, die eine zufällige m×n Matrix mit Zahlen von 0-9
erzeugt: static int[][] randomMatrix(int m, int n). Zum Erzeugen der Zufallszahlen
verwenden Sie die bereits aus der vorigen Übung bekannte Methode Math.random().
In der main-Methode fragen Sie die Zeilenanzahl (m) und Spaltenanzahl (n) vom Benutzer ab,
erzeugen anschließend eine zufällige Matrix mit der entsprechenden Größe und geben die Matrix
und die transponierte Matrix aus. Verwenden Sie zur Ausgabe einer Matrix auch eine eigene
Methode.
Achten Sie darauf, dass Ihr Programm auch mit nicht existierenden (null) und leeren Matrizen
(Zeilenanzahl 0) funktioniert.
Hier wär der code dazu aber irgendwie gibt er mir zwei fehlerausgaben und ich weiß nicht wieso...:
Code:
public class Main {
static int [][] randomMatrix(int m, int n)
{
int [][] rarr= new int[m][n];
for(int i=0; i<n; i++){
for(int j=0; j<m; j++){
rarr[m][n]= (int) (Math.random() * 10);//Zeile 16
}
}
return rarr;
}
public static void main(String[] args) {
IO.writeLn("Rows: ");
int r =IO.readInt();
IO.writeLn("Coloms: ");
int c = IO.readInt();
int[][] randomM=randomMatrix(r,c) ;//Zeile 32
IO.writeLn("Random Matrix: ");
for(int i=0; i<c;i++){
for(int a=0; a<r; a++){
IO.write(randomM[r][c]);
}IO.writeLn();
}
}
}
Hier Fehlerausgabe:
Rows:
4
Coloms:
6
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4
at transponiereneinermatrix.Main.randomMatrix(Main.java:16)
at transponiereneinermatrix.Main.main(Main.java:32)
Java Result: 1
BUILD SUCCESSFUL (total time: 10 seconds)