【c语言】厄密多项式--用递归实现

/* 厄密多项式是这样定义的:
      n <= 0时,h(n(x)) = 1;
	  n = 1时,h(n(x)) = 2*x;
	  n >= 2时,h(n(x)) = 2*x*(h(n-1)(x)) - 2*(n-1)*(h(n-2)(x));
编写递归函数,函数应该和下面的函数原型匹配:
int hermite(int n, int x)*/

#include <stdio.h>

int hermite(int n, int x)
{
	int h = 0;
	if( n <= 0 )
		h = 1;
	else if( n == 1 )
		h = 2 * x;
	else
		h = 2 * x * hermite( n - 1, x ) - 2 * ( n - 1 ) * hermite( n - 2, x ); 
	return h;
}

int main()
{
	printf("%d\n",hermite(3,2));
	return 0;
}


下边截图分别是 n=0,n=1,n=3,x=2时候的例子

技术分享

技术分享

技术分享

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。