
求一份JAVA程序设计报告,程序在下面
publicclassMatrix{privateintrow;privateintcol;privatedouble[][]content;//构造函数publicMa...
public class Matrix
{
private int row;
private int col;
private double[][] content;
//构造函数
public Matrix(int row,int col,double[][] content)
{
int i,j;
this.row=row;
this.col=col;
this.content=new double[this.row][this.col];
for(i=0;i<row;i++)
for(j=0;j<col;j++)
this.content[i][j]=content[i][j];
}
//乘积方法
public Matrix matrixChen(Matrix matrix)
{
double[][] result=new double[this.row][matrix.col];
int i,j,k;
for(i=0;i<this.row;i++)
for(j=0;j<matrix.col;j++)
result[i][j]=0.0;
for(i=0;i<this.row;i++)
for(j=0;j<matrix.col;j++)
for(k=0;k<this.col;k++)
result[i][j]=result[i][j]+this.content[i][k]*matrix.content[k][j];
return new Matrix(this.row,matrix.col,result);
}
//加法方法
public Matrix matrixAdd(Matrix matrix)
{
double[][] result=new double[this.row][this.col];
int i,j;
for(i=0;i<this.row;i++)
for(j=0;j<this.col;j++)
result[i][j]=this.content[i][j]+matrix.content[i][j];
return new Matrix(this.row,this.col,result);
}
//减法方法
public Matrix matrixMinus(Matrix matrix)
{
double[][] result=new double[this.row][this.col];
int i,j;
for(i=0;i<this.row;i++)
for(j=0;j<this.col;j++)
result[i][j]=this.content[i][j]-matrix.content[i][j];
return new Matrix(this.row,this.col,result);
}
//显示方法
public void displayMatrix()
{
int i,j;
for(i=0;i<row;i++)
{
for(j=0;j<row;j++)
System.out.print(content[i][j]+" ");
System.out.println("\n");
}
}
//测试用的主函数
public static void main(String[] args)
{
double[][] content1=new double[4][5];
double[][] content2=new double[4][5];
double[][] content3=new double[5][4];
int i,j,k=0;
for(i=0;i<4;i++)
for(j=0;j<5;j++)
{
content1[i][j]=k;
content2[i][j]=k;
k++;
}
k=0;
for(i=0;i<5;i++)
for(j=0;j<4;j++)
{
content3[i][j]=k++;
}
Matrix ori=new Matrix(4,5,content1);
Matrix two=new Matrix(4,5,content2);
Matrix three=new Matrix(5,4,content3);
Matrix addResult=ori.matrixAdd(two);
Matrix minusResult=ori.matrixMinus(two);
Matrix chenResult=ori.matrixChen(three);
addResult.displayMatrix();
minusResult.displayMatrix();
chenResult.displayMatrix();
}
} 展开
{
private int row;
private int col;
private double[][] content;
//构造函数
public Matrix(int row,int col,double[][] content)
{
int i,j;
this.row=row;
this.col=col;
this.content=new double[this.row][this.col];
for(i=0;i<row;i++)
for(j=0;j<col;j++)
this.content[i][j]=content[i][j];
}
//乘积方法
public Matrix matrixChen(Matrix matrix)
{
double[][] result=new double[this.row][matrix.col];
int i,j,k;
for(i=0;i<this.row;i++)
for(j=0;j<matrix.col;j++)
result[i][j]=0.0;
for(i=0;i<this.row;i++)
for(j=0;j<matrix.col;j++)
for(k=0;k<this.col;k++)
result[i][j]=result[i][j]+this.content[i][k]*matrix.content[k][j];
return new Matrix(this.row,matrix.col,result);
}
//加法方法
public Matrix matrixAdd(Matrix matrix)
{
double[][] result=new double[this.row][this.col];
int i,j;
for(i=0;i<this.row;i++)
for(j=0;j<this.col;j++)
result[i][j]=this.content[i][j]+matrix.content[i][j];
return new Matrix(this.row,this.col,result);
}
//减法方法
public Matrix matrixMinus(Matrix matrix)
{
double[][] result=new double[this.row][this.col];
int i,j;
for(i=0;i<this.row;i++)
for(j=0;j<this.col;j++)
result[i][j]=this.content[i][j]-matrix.content[i][j];
return new Matrix(this.row,this.col,result);
}
//显示方法
public void displayMatrix()
{
int i,j;
for(i=0;i<row;i++)
{
for(j=0;j<row;j++)
System.out.print(content[i][j]+" ");
System.out.println("\n");
}
}
//测试用的主函数
public static void main(String[] args)
{
double[][] content1=new double[4][5];
double[][] content2=new double[4][5];
double[][] content3=new double[5][4];
int i,j,k=0;
for(i=0;i<4;i++)
for(j=0;j<5;j++)
{
content1[i][j]=k;
content2[i][j]=k;
k++;
}
k=0;
for(i=0;i<5;i++)
for(j=0;j<4;j++)
{
content3[i][j]=k++;
}
Matrix ori=new Matrix(4,5,content1);
Matrix two=new Matrix(4,5,content2);
Matrix three=new Matrix(5,4,content3);
Matrix addResult=ori.matrixAdd(two);
Matrix minusResult=ori.matrixMinus(two);
Matrix chenResult=ori.matrixChen(three);
addResult.displayMatrix();
minusResult.displayMatrix();
chenResult.displayMatrix();
}
} 展开
1个回答
2013-05-04
展开全部
加油~~~~~~~~~~~~~~~
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询