📄 java矩阵计算.txt
字号:
import java.applet.Applet;
import java.awt.*;
public class Mymatrix extends Applet {
Label m_prompt,n_prompt,x_prompt,y_prompt,A_martri,B_martri;
TextField m_input,n_input,x_input,y_input,A_input,B_input;
Label number=new Label("显示输入的个数 ");
Button ab=new Button("我要计算A x B");
int m,n,x,y,k=0,count=0;
int []mylove =new int[20];//第一存放的一维数组
int [][]A=new int[10][10];//存放第一个矩阵A
int [][]B=new int[10][10];//存放第二个矩阵B
int [][]C=new int [10][10];//存放第三个矩阵C=A*B
public void init()
{
m_prompt=new Label("矩阵A的行m=");
m_input=new TextField(4);
n_prompt=new Label("矩阵A的列n=");
n_input=new TextField(4);
x_prompt=new Label("矩阵B的行x=");
x_input=new TextField(4);
y_prompt=new Label("矩阵B的列y=");
y_input=new TextField(4);
A_martri=new Label("请输入矩阵A");
A_input=new TextField(10);
B_martri=new Label("请输入矩阵B");
B_input=new TextField(10);
add(m_prompt);add(m_input);add(n_prompt);
add(n_input);add(A_martri);add(A_input);
add(x_prompt);add(x_input);add(y_prompt);
add(y_input);add(B_martri);add(B_input);
add(number);add(ab);
}
public void paint(Graphics g)
{
g.drawString("------注意每次输入以回车键结束-------",50,50);
int i,j,aa=0,bb=0;//aa控制列,bb控制行
g.drawString("您输入的A矩阵是:",150,100);//显示A矩阵
for(i=0;i<m;i++)
for(j=0;j<n;j++)
{
g.drawString(Integer.toString(A[i][j]),350+50*aa,150+50*bb);
if(aa==n-1)
{
aa=0;
bb++;
}
else aa++;
}
g.drawString("您输入的B矩阵是:",150,300);//显示B矩阵
for(i=0,aa=0,bb=0;i<x;i++)
for(j=0;j<y;j++)
{
g.drawString(Integer.toString(B[i][j]),350+50*aa,350+50*bb);
if(aa==y-1)
{
aa=0;
bb++;
}
else aa++;
}
g.drawString("A矩阵 X B矩阵的结果是:",100,500);//显示A*B矩阵
for(i=0,aa=0,bb=0;i<m;i++)
for(j=0;j<y;j++)
{
g.drawString(Integer.toString(C[i][j]),350+50*aa,550+50*bb);
if(aa==y-1)
{
aa=0;
bb++;
}
else aa++;
}
}
public boolean action(Event e,Object o)
{
if(e.target==n_input)
{
x_input.setText(String.valueOf(Integer.parseInt(n_input.getText())));
m=Integer.parseInt(m_input.getText());
n=Integer.parseInt(n_input.getText());
}
if (e.target==A_input)
{
mylove[count++]=Integer.parseInt(A_input.getText());
if(count<m*n)
{
number.setText("已输入"+count+"个数据,请继续");
A_input.setText("");
}
else
{
number.setText(m*n+"已输入完矩阵A!");
A_input.disable();
for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
A[i][j]=mylove[k++];
count=0;k=0;
}
}
if (e.target==B_input)
{
x=Integer.parseInt(n_input.getText());
y=Integer.parseInt(y_input.getText());
mylove[count++]=Integer.parseInt(B_input.getText());
if(count<x*y)
{
number.setText("已输入"+count+"个数据,请继续");
B_input.setText("");
}
else
{
number.setText(x*y+"已输入完矩阵B!");
B_input.disable();
for(int i=0;i<x;i++)
for(int j=0;j<y;j++)
B[i][j]=mylove[k++];
}
}
if(e.target==ab)
{
for(int i=0;i<m;i++)
for(int j=0;j<y;j++)
for(int k=0;k<n;k++)
C[i][j]+=A[i][k]*B[k][j];
repaint();
ab.disable();
}
return true;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -