• java作业矩阵类


    import java.io.*;
    import java.io.*;

    public class Matrix //定义矩阵类

    {

    int m;

    int n;

    int[][] num;

    Matrix(int j,int k) //构造函数

    {

    m=j;

    n=k;

    num=new int[m][n];

    }

    public static void cinMatrix(Matrix a) //输入矩阵 输入时必须一个一个的输入

    {

    try

    {

    for(int i=0;i<a.m;i++)

    {

    for(int j=0;j<a.n;j++)

    {

    BufferedReader br=new BufferedReader(new InputStreamReader(System.in));

    a.num[i][j]=Integer.parseInt(br.readLine());

    }

    }


    }

    catch (IOException ex)

    {

    }

    }

    public static Matrix plus(Matrix a , Matrix b) //矩阵的加法

    {

    if(a.m!=b.m || a.n!=b.n)

    {

    System.out.println("error");

    return null;

    }

    else

    {

    Matrix c=new Matrix(a.m,a.n);

    for(int i=0;i<a.m;i++)

    {

    for(int j=0;j<a.n;j++)

    {

    c.num[i][j]=a.num[i][j]+b.num[i][j];

    }

    }

    return c;

    }

    }

    public static Matrix minus(Matrix a , Matrix b) //矩阵乘法

    {

    if(a.m!=b.m || a.n!=b.n)

    {

    System.out.println("error");

    return null;

    }

    else

    {

    Matrix c=new Matrix(a.m,a.n);

    for(int i=0;i<a.m;i++)

    {

    for(int j=0;j<a.n;j++)

    {

    c.num[i][j]=a.num[i][j]-b.num[i][j];

    }

    }

    return c;

    }

    }

    public static Matrix multiply(Matrix a , Matrix b) //矩阵乘法

    {

    if(a.n!=b.m)

    {

    System.out.println("error");

    return null;


    }

    else

    {

    Matrix c=new Matrix(a.m,a.n);

    for(int i=0;i<a.m;i++)

    for(int j=0;j<b.n;j++)

    {

    c.num[i][j]=0;

    for(int k=0;k<a.n;k++)

    c.num[i][j]+=a.num[i][k]*b.num[k][j];

    }

    return c;

    }

    }

    public static void print(Matrix a)

    {

    for(int i=0;i<a.m;i++)

    {

    for(int j=0;j<a.n;j++)

    {

    System.out.print(a.num[i][j]+" ");

    }

    System.out.println();

    }

    }

    public static void main(String[] args) //测试函数



    Matrix m1=new Matrix(3,3);

    Matrix m2=new Matrix(3,3);

    Matrix.cinMatrix(m1);

    Matrix.cinMatrix(m2);

    Matrix m3=Matrix.plus(m1,m2);

    Matrix m4=Matrix.minus(m1,m2);

    Matrix m5=Matrix.multiply(m1,m2);

    Matrix.print(m3);

    System.out.println();

    Matrix.print(m4);

    System.out.println();

    Matrix.print(m5);

    }

    }

    本篇文章来源于:开发学院 http://edu.codepub.com   原文链接:http://edu.codepub.com/2009/1019/16481.php
  • 相关阅读:
    在Js或者cess后加版本号 防止浏览器缓存
    svn操作
    Hash表
    网站js埋点
    c#优秀文章
    CentOS修改默认yum源为国内yum镜像源
    mysql开启远程连接
    安装jdk环境
    Eclipse的一下设置
    好用的在线HTML、CSS工具
  • 原文地址:https://www.cnblogs.com/xinzhuangzi/p/4100644.html
Copyright © 2020-2023  润新知