欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java 多项式求值

程序员文章站 2024-03-21 20:21:04
...

多项式求值:

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;
}
}