Это мой код для умножения матриц:
import java.util.*;
class MatrixMult{
static float[][] matMult(float[][] a, float[][] b){
float[][] c = new float[a.length][b[0].length];
for(int i = 0; i < a.length; ++i){
for(int j = 0; j < a[0].length; ++j){
float sum = 0;
for(int z = 0; z < b.length; ++z){
sum += a[i][z] * b[z][j];
}
c[i][j] = sum;
}
}
for(int i = 0; i < c.length; i++){
for(int j = 0; j < c[0].length; j++){
System.out.print(c[i][j] + " ");
}
System.out.println();
}
return c;
}
public static void main(String[] arg){
Scanner sc = new Scanner(System.in);
System.out.println("number of columns and rows for array a: ");
float arow = sc.nextFloat();
float acol = sc.nextFloat();
float[][] a = new float[arow][acol]; //error1
System.out.println("elements of array a: ");
for(int i = 0; i < a.length; i++){
for(int j = 0; j < a[0].length; j++){
a[i][j] = sc.nextFloat();
}
}
System.out.println("number of columns and rows for array b: ");
float brow = sc.nextFloat();
float bcol = sc.nextFloat();
float[][] b = new float[brow][bcol]; //error2
System.out.println("elements of array b: ");
for(int i = 0; i < b.length; i++){
for(int j = 0; j < b[0].length; j++){
b[i][j] = sc.nextFloat();
}
}
matMult(a, b);
}
}
Я прокомментировал две строки, которые должны быть "неправильными", но я не знаю, как это исправить, я получаю следующую ошибку: Несовместимые типы: возможное преобразование с потерями из int в float.