用函数的递归调用方法求下列函数式的值(要求n由用户输入),递归公式为:
计算多项式Pn(x) –a0xn十a1xn-1+a2xn-2+…+an-1x十an的值, 通常使用的方法是一种嵌套的方法。它可以描述为如下迭代形式:bv=av,bi+1=x×bi+ai+1, i=0, 1,…,n-l。若设bn=Pn(x) , 则问题可以写为如下形式:Pn(x) =x×Pn-1(x)+an, 此处, Pn-i(x) =avxn-1+a1xn-2+…+an-2x+an-1, 这是问题的递归形式。试编写一个函数, 计算这样的多项式的值。
设计一个point(点)类: (1)该类具有成员变量x,y(表示点的横、纵坐标); (2)定义一个有参构造方法point(int x,int y),将其一对坐标值作为参数,其中x,y为给定坐标值; (3)定义一个无参的构造方法point()(令两坐标值均为0); (4)设计一个实例方法distance(point p1,point p2),实现求坐标轴上两个点的距离(Java中的开平方根函数为Math.sqrt()),其方法的声明为:double distance(point p1,point p2) 。 编写Test类,在其main方法中创建2个point对象,对应点(10,10)和点(20,25),再调用distance(point p1,point p2)方法计算出两点之间的距离并输出该值。
递归方法能用来定义增长很快的函数,下面定义的阿克曼函数就是这样。
试计算A(n,1),A(n,2),A(n,3),A(4,4).