Hermite多项式

题目描述

用递归的方法求 Hermite 多项式的值

hn​(x)=⎩⎪⎪⎨⎪⎪⎧​12x2xhn−1​(x)−2(n−1)hn−2​(x)​n=0n=1n>1​

对给定的 x 和正整数 n ,求多项式的值,并保留两位小数。

输入格式

给定的 n 和正整数 x

输出格式

多项式的值。

输入样例

 
  1. 1 2

输出样例

 
  1. 4.00
    根据题意,我们需要计算 Hermite 多项式,题目中给出相应的计算公式,我们需要对给定的数字,进行相应公式的计算,当满足不同的条件下,我们采用不同的计算公式。
    #include<iostream>  
    #include<cstdio>  
    using namespace std;  
    double calculate(int n,int x);  
    //主函数的定义  
    int main()  
    {  
        int n,x;  
        double result;  
        cin>>n>>x;  
        result=calculate(n,x);  
        printf("%.2lf\n",result);  
        return 0;  
    }  
    //Hermite多项式的定义  
    double calculate(int n,int x)  
    {  
        if(n==0)//判断是否到达递归边界n=0  
            return 1;  
        else if(n==1)//判断是否到达递归边界n=1  
            return 2*x;  
        else//否则继续递归  
            return ( 2*x*calculate(n-1,x)-2*(n-1)*calculate(n-2,x) );  
    }  

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值