📄 sanjiao.java
字号:
import java.io.*;
import java.lang.Math.*;
public class sanjiao {
public static void main(String[] args) {
String s1,s2;
int m=0,n=0;
System.out.println("请输入要计算的矩阵的行数:");
try{
BufferedReader br=
new BufferedReader(new InputStreamReader(System.in));
s1=br.readLine();
m=Integer.parseInt(s1);
}catch(IOException e){}
System.out.println("请输入要计算的矩阵的列数:");
try{
BufferedReader br=
new BufferedReader(new InputStreamReader(System.in));
s2=br.readLine();
n=Integer.parseInt(s2);
}catch(IOException e){}
String r[][]=new String[m][n];
double a[][]=new double[m][n];
System.out.print("请输入矩阵:");
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
try{
BufferedReader in=
new BufferedReader(new InputStreamReader(System.in));
r[i][j]=in.readLine();
a[i][j]=Double.parseDouble(r[i][j]);
} catch(IOException e){}
}
}
System.out.println("你输入的矩阵为:");
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
System.out.print(a[i][j]);
System.out.print("\t");
}
System.out.println();
}
double b[][]=new double[m][m];
double sum=0,c=0;
System.out.println("中间矩阵为:");
for(int j=0;j<m;j++){
for(int i=0;i<m;i++){
if(i==j){
for(int k=0;k<=i-1;k++){
c=b[i][k]*b[i][k];
sum=sum+c;
}
b[j][j]=(double)Math.sqrt(a[i][j]-sum);
}
if(i>j){
for(int k=0;k<=j-1;k++){
c=b[i][k]*b[j][k];
sum=sum+c;
}
try{
b[i][j]=(a[i][j]-sum)/b[j][j];
}catch(ArithmeticException e){
System.out.println("devided by 0");}
}
System.out.println("b["+i+"]["+j+"]:"+b[i][j]);
}
}
System.out.println("中间量Y为:");
double y[][]=new double[m][1];
for(int i=0;i<m;i++) {
for(int k=0;k<i-1 ;k++)
{
c=b[i][k]*y[k][0];
sum=sum+c;
}
try{
y[i][0]=(a[i][n-1]-sum)/b[i][i];
}catch(ArithmeticException e){
System.out.println("devided by 0");}
System.out.println("y["+i+"][0]:"+y[i][0]);
}
System.out.println("所求的X为:");
double x[][]=new double[m][1];
for(int i=m-1;i>-1;i--) {
for(int k=m-1;k>i ;k--)
{
c=b[k][i]*x[k][0];
sum=sum+c;
}
try{
x[i][0]=(y[i][0]-sum)/b[i][i];
}catch(ArithmeticException e){
System.out.println("devided by 0");}
System.out.println("x["+i+"][0]:"+x[i][0]);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -