二维多项式包含X,Y两个变量的多项式,其一般形式为:
P(x,y)=ΣΣaijxiyj
等价于:p(x,y)=Σ(Σ(aijxi)yj)
令ti=Σ(aijxi)yj
Rn-1=a
i,n-1
x
i
;R
j
=R
j+1
y+a
ij
x
j
,j=n-2,...1,0。
代码段:
public class Hanshujiaohuan { public static double sun(double a[][],int m,int n,double x,double y) { double result=0.0; double temp,t=1.0; int i,j; for(i=0;i<m;i++) { temp=a[i][n-1]*t; for(j=n-2;j>=0;j--) { temp=temp*y+a[i][j]*t; } result+=temp; t*=x; } return result; } public static void main(String []args) { int i; double result; double x=0.5; double y=-2.0; DecimalFormat df=new DecimalFormat("0.000E000"); double a[][]= {{1.0,2.0,3.0,4.0,5.0},{6.0,7.0,8.0,9.0,10.0},{11.0,12.0,13.0,14.0,15.0},{16.0,17.0,18.0,19.0,20.0}}; System.out.println("二维多项式求值: \n"); result=sun(a,4,5,x,y); System.out.print("p("+x+","+y+")="+df.format(result)+"\n"); System.out.print("\n"); } }