概述
import java.util.Scanner;
public class matrix {
public static double[][] multiplyMatrix(double[][] a,double[][] b){
if(a[0].length != b.length) {
System.out.println("输入错误");
return null;
}
double[][] c=new double[a.length][b[0].length];
for(int i=0;i<a.length;i++)
for(int j=0;j<b[0].length;j++)
for(int k=0;k<a[0].length;k++)
c[i][j] += a[i][k] * b[k][j];
return c;
}
public static void printMatrix(double[][] c) {
if (c!=null) {
for(int i=0;i<c.length;i++) {
for(int j=0;j<c[0].length;j++)
System.out.printf("%-8.1f",c[i][j]);
System.out.println();
}
}
else {System.out.println("无效");}
System.out.println();
}
public static void main(String[] args) {
Scanner input=new Scanner(System.in);
System.out.println("输入第一个矩阵的行");
int m=input.nextInt();
System.out.println("输入第一个矩阵的列");
int n=input.nextInt();
System.out.println("输入第二个矩阵的列");
int k=input.nextInt();
double [][]a=new double[m][n];
double [][]b=new double[n][k];
System.out.println("输入矩阵a:");
for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
a[i][j]=input.nextDouble();
System.out.println("输入矩阵b:");
for(int i=0;i<n;i++)
for(int j=0;j<k;j++)
b[i][j]=input.nextDouble();
double [][]c=multiplyMatrix(a, b);
System.out.println("Matrix a:");
printMatrix(a);
System.out.println("Matrix b:");
printMatrix(b);
System.out.println("Matrix c:");
printMatrix(c);
input.close();
}
}
最后
以上就是鳗鱼蜜粉为你收集整理的java计算两个矩阵相乘的全部内容,希望文章能够帮你解决java计算两个矩阵相乘所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复