⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 example3_8.java

📁 Java学习丛书科学与工程数值算法(Java版)一书的代码
💻 JAVA
字号:
import java.applet.*;
import java.awt.*;

public class Example3_8  extends Applet
 { public static boolean  ldltsolve(double[][] a,double[] x, int n)
  { int i,j,k;
    for(i=0;i<n;i++)
    {  for(k=0;k<i;k++)a[i][i]-=a[i][k]*a[i][k]*a[k][k];
       if(a[i][i]==0)return false;
       for(j=i+1;j<n;j++)
       { for(k=0;k<i;k++)a[j][i]-=a[j][k]*a[i][k]*a[k][k];
         a[j][i]/=a[i][i];
        }
    }

    for(i=0;i<n;i++)
      { for(j=0;j<i;j++)
         x[i]-=a[i][j]*x[j];
      }
    for(i=0;i<n;i++)x[i]/=a[i][i];
    for(i=n-1;i>=0;i--)
      for(j=i+1;j<n;j++)
        x[i]-=a[j][i]*x[j];
   return true;
   }

  public void  paint(Graphics g)
  {double[][] a={{5,-4,1},{-4,6,-4},{1,-4,-6}};
   double[] b={2,-1,-1};
   if (ldltsolve(a,b,3))
       {g.drawString("X0="+b[0],10,20);
        g.drawString("X1="+b[1],10,40);
        g.drawString("X2="+b[2],10,60);}
     else
     {g.drawString("不能LDL分解!",10,20);}
   }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -