/**
 * 本程序用雅可比迭代法求方程组的解。
 * 方程组的系数分别存放在a数组当中,b用来存放对角线系数,
 * c数组用来存放常数项的值。
 * x1和x2数组用来存放初次迭代的值。
 */
public static void main(String[] args) {
 int u=0;
 double[][] a;
 double[] b,c,x1,x2;
 double m,n,s,eps;
 a=new double[3][3];
 b=new double[3];
 c=new double[3];
 x1=new double[3];
 x2=new double[3];
 b[0]=a[0][0]=10.0;
 a[0][1]=-1.0;
 a[0][2]=-2.0;
 a[1][0]=-1.0;
 b[1]=a[1][1]=10.0;
 a[1][2]=-2.0;
 a[2][0]=-1.0;
 a[2][1]=-1.0;
 b[2]=a[2][2]=5.0;
 c[0]=7.2;
 c[1]=8.3;
 c[2]=4.2; 
 
for(int i=0;i<3;i++)
for(int j=0;j<3;j++)
 {
   if(i==j)
      {
       a[i][j]=0;
       c[i]=c[i]/b[i];
      }
   else
      {
 a[i][j]=a[i][j]/b[i];
 c[i]=c[i]/b[i];
      } 
  } 
  
x1[0]=1.0;
x1[1]=1.0;
x1[2]=1.0;
x2[0]=0.0;
x2[1]=0.0;
x2[2]=0.0;
m=1.0;
n=0.0;
eps=0.000000001;
while((m-n)>eps)
{
for(int i=0;i<3;i++)
  {  
     x1[i]=x2[i];
  }
for(int i=0;i<3;i++)
  { 
   s=0;
    for(int j=0;j<3;j++)
  s=s+a[i][j]*x1[i];
     x2[i]=s+c[i];
  }

m=(x1[0]>x1[1]?x1[0]:x1[1]);
m=(m>x1[2]?m:x1[2]);
n=(x2[0]>x2[1]?x2[0]:x2[1]);
n=(n>x2[2]?n:x2[2]);
   }
  System.out.println("线性方程组的解是:");
  for(int i=0;i<3;i++)
  System.out.println(x1[i]);
 }        问题是得出来的答案不准确,不知道哪里错了,谁知道的话帮我改一下,在这里先谢了!哈