「java插值」java插值库

博主:adminadmin 2023-01-24 03:33:06 384

今天给各位分享java插值的知识,其中也会对java插值库进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java往数据库里插值的问题 急用

字段right是mysql的保留字,尽量不要使用这些保留字作为字段名.

把right改成其他名字试试吧

java用jsp通过servlet向oracle数据库插值总是不成功class.forname报错

首先检查你是否导入了oracle的驱动。

然后你再看一下你的oracle驱动的类名是不是写错了。是不是这样写。如果是Class.forName()的出错就基本上这两个原因

用Java实现牛顿插值 求大神帮下

class Lagrange

{

public static double esitimate(double x,int n,double k[][])

{

   double y=0;

   int i;

   int j;

   double w;

   double w1;

   for(i=0;in;i++)

   {

    w=1;

    w1=1;

    for(j=0;jn;j++)

    {

     if(j==i)

      continue;

     else

     {

      w=w*(x-k[j][0]);

      w1=w1*(k[i][0]-k[j][0]);

     }

    }

    //System.out.printf("y=%f,w=%f,w1=%f\n",k[i][1],w,w1);

    y=y+k[i][1]*w/w1;

   }

   return y;

}

}

class Newton

{

double ad[][];//均差表

int n;

    Newton(int n,double k[][])

{

    int i,j;

    this.n=n;

    ad=new double[n][n];

    for(i=0;in;i++)

       ad[i][0]=k[i][1];

    for(i=1;in;i++)

       ad[i][1]=(ad[i][0]-ad[i-1][0])/(k[i][0]-k[i-1][0]);

    for(i=2;in;i++)

       for(j=i;jn;j++)

       {

        ad[j][i]=(ad[j][i-1]-ad[j-1][i-1])/(k[j][0]-k[j-i][0]);

        //System.out.printf("%f %f %f %f\n", ad[j][i-1],ad[j-1][i-1],k[j][0],k[j-i][0]);

       }

    show();

}

    void update(double x,double y,double k[][])

    {

    int i,j;

    n++;

    k[n-1][0]=x;

    k[n-1][1]=y;

    double temp[][]=new double[n][n];

    for(i=0;in-1;i++)

       for(j=0;j=i;j++)

        temp[i][j]=ad[i][j];

    temp[n-1][0]=y;

    for(i=1;in;i++)

       temp[n-1][i]=(temp[n-1][i-1]-temp[n-2][i-1])/(x-k[n-1-i][0]);

    ad=temp;

    show();

    }

    void show()

    {

    int i,j;

    System.out.println("均差计算可列均差表如下:");

    for(i=0;in;i++)

    {

       for(j=0;j=i;j++)

        System.out.printf("%f   ", ad[i][j]);

       System.out.printf("\n");

    }

    System.out.println("*******************************************");

    }

    double esitimate(double x,double k[][])

    {

    int i,j;

    double y=ad[0][0];

    double w;

    for(i=1;in;i++)

    {

       w=ad[i][i];

       for(j=0;ji;j++)

        w=w*(x-k[j][0]);

       y=y+w;

    }

    return y;  

    }

}

public class interpolate 

{

public static void main(String args[])

{

     int n=20;

     double k[][]=new double[n][2];

     int i;

     n=3;

     k[0][0]=0.32;

     k[0][1]=0.314567;

     k[1][0]=0.34;

     k[1][1]=0.333487;

     k[2][0]=0.36;

     k[2][1]=0.352274;

     System.out.println("拉格朗日插值的节点:");

     for(i=0;in;i++)

    System.out.printf("%f    %f\n", k[i][0],k[i][1]);

     System.out.println("估算0.3367处的函数值:");

     n=2;

     System.out.printf("采用%d次插值得:%f\n",n-1,Lagrange.esitimate(0.3367,n,k));

     n=3;

     System.out.printf("采用%d次插值得:%f\n",n-1,Lagrange.esitimate(0.3367,n,k));

     System.out.println("*******************************************");

     k[0][0]=0.4;

     k[0][1]=0.41075;

     k[1][0]=0.55;

     k[1][1]=0.57815;

     k[2][0]=0.65;

     k[2][1]=0.69675;

     k[3][0]=0.80;

     k[3][1]=0.88811;

     k[4][0]=0.90;

     k[4][1]=1.02652;

     k[5][0]=1.05;

     k[5][1]=1.25382;

     Newton nt=new Newton(3,k);

     nt.update(0.80, 0.88811, k);

     nt.update(0.90, 1.02652, k);

     nt.update(1.05, 1.25382, k);

     nt=new Newton(5,k);

     System.out.println("估算0.596处的函数值:");

     System.out.printf("%f",nt.esitimate(0.596, k));

}

}

java插值的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java插值库、java插值的信息别忘了在本站进行查找喔。