?? example3_12.java
字號:
import java.applet.*;
import java.awt.*;
public class Example3_12 extends Applet
{
public static void GaussSeidel(double[][] a,double[] x,int n,double eps)
{int i,j,k=0;
double temp;
double[] y=new double[n];
double[] z=new double[n];
for(i=0;i<n;i++){y[i]=0;z[i]=0;}
while(true)
{ k++;
for(i=0;i<n;i++)
{ z[i]=x[i];
for(j=0;j<i;j++)z[i]-=z[j]*a[i][j];
for(j=i+1;j<n;j++)z[i]-=y[j]*a[i][j];
z[i]/=a[i][i];
}
temp=0;
for(i=0;i<n;i++)
{temp+=Math.abs(z[i]-y[i]);}
if(temp<eps)break;
for(i=0;i<n;i++)y[i]=z[i];
}
for(i=0;i<n;i++)x[i]=z[i];
}
public void paint(Graphics g)
{double[][] a={{10,3,1},{2,10,3},{1,3,10}};
double[] b={14,-5,14};
double eps=1e-7;
GaussSeidel(a,b,3,eps);
g.drawString("近似解為:",10,20);
for(int i=0;i<3;i++)
g.drawString("X"+i+"="+b[i],10,i*20+40);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -