Java 多项式求值

来源:互联网 发布:多目标 优化 编辑:程序博客网 时间:2024/05/28 11:50

多项式求值:

package ceshi;import java.awt.Polygon;import java.text.DecimalFormat;public class duoxiangshiqiuzhi {//一维多项式求值      n为多项试系数    数组a为存放多项式系数的n个系数    x为指定变量值 public static double yiwei(double a[],int n,double x){int i;double f,result;f=-1.0;result=a[n-1];for(i=n-2;i>0;i--){result += a[n-2]*x;f=result;}return f;}public static void main(String[] args) {int i;//系数从小到大double a[]={-15.0,-7.0,7.0,2.0,-3.0,7.0,3.0};double[] x={-2.0,-0.58,1.0,2.0,3.7,4.0};double result;DecimalFormat df=new DecimalFormat("0.0000000E000");DecimalFormat df1=new DecimalFormat("0.00");for(i=0;i<6;i++){result =yiwei(a,7,x[i]);System.out.println("x="+df1.format(x[i])+"时,p(x)"+df.format(result));}}//二维多项式求值public static double erwei(double a[][],int m,int n,double x,double y){double result,tt,temp;int i,j;tt=1.0;result = 0.0;for(i=0;i<n;i++){temp= a[i][n-1]*tt;for(j=n-2;j>0;j--){temp = temp*y+a[i][j]*tt;}result+=temp;tt*=x;}return result;}}