P219 用递归方法求n阶勒让德多项式

#include<stdio.h>
int main()

{
int N;
float x;
float P(int N,float x);
scanf("%d%f",&N,&x);
printf("%f\n",P(N,x));
return 0;
}

float P(int N,float x)
{
if(N==0) return 1;
else if(N==1) return x;
else return ((2*N-1)*x-P(N-1,x)-(N-1)*P(N-2,x))/N;
}

时间: 2024-10-14 12:41:51

P219 用递归方法求n阶勒让德多项式的相关文章

8.13 用递归方法求n阶勒让德多项式的值

#include <stdio.h> int main(){ double n,x,y; double p(double n,double x); printf("input n,x(n>=0):\n"); scanf("%lf,%lf",&n,&x); //方程pn(x) y=p(n,x); printf("the result is %lf\n",y); } double p(double n,double

OJ刷题之《求n阶勒让德多项式》

题目描述 用递归方法求n阶勒让德多项式的值,递归公式为 n=0     pn(x) =1 n=1     pn(x) =x n>1     pn(x) =((2n-1)*x* pn-1(x) -(n-1)* pn-2(x))/n 结果保留2位小数. 输入 n和x的值. 输出 pn(x)的值. 样例输入 2 2 样例输出 5.50 提示 主函数已给定如下,提交时不需要包含下述主函数 /* C代码 */ int main() { int x,n; scanf("%d%d",&

C语言之函数调用13—递归法求N阶勒让德多项式的值

//递归法! /* ======================================================= n阶勒让德多项式,n=1时,Pn(x)=x;n>=1时, Pn(x)=((2n-1)x-Pn-1(x)-(n-1)Pn-2(x))/2. ======================================================= */ #include <stdio.h> #include <math.h> double p(

4.18n阶勒让德多项式求解

Q:编写程序,输入正整数n和任意数x,求出勒让德多项式的值Pn(x) #include <iostream> #include<cstdio> using namespace std; float Rand(int n,float x) { if(n==0) return 1; else if(n==1) return x; else return ((2*n-1)*x-Rand(n-1,x)-(n-1)*Rand(n-2,x))/n; } int main() { int n;

基本递归(1)勒让德多项式

简单概括递归的用法: **找到通顶式,在主函数内调用** /* * Copyright (c) 2016, 北京市QY小学 * All rights reserved. * 作 者: 刘君翼 * 完成日期:2016 年 10 月 11 日 * 版 本 号:v1.0 * 输入描述: * 问题描述: 用递归方法求n阶勒让德多项式的值* 程序输出:* 问题分析:略 * 算法设计:略 */ #include<iostream> using namespace std; int main(){ doub

C语言之函数调用14—递归法打印勒让德多项式前N项

//递归法 /* ================================================================== 题目:勒让德多项式 ================================================================== */ #include <stdio.h> double p(int n,double x) { if(n==0)return 1.0; else if(n==1)return x; else

递归--利用递归方法求6!

利用递归方法求6! 使用递归时,关键问题是弄明白递归表达式的含义以及递归的终止条件 1 package com.test01; 2 3 public class JianDa03 { 4 public static long fac(int i) { 5 if (i == 1){ 6 return 1; 7 } else { 8 return i * fac(i - 1); 9 } 10 } 11 public static void main(String[] args){ 12 long r

比较求N阶多项式的算法比较

#include<stdio.h>#include<math.h>#include<time.h> #define MAXK 1e6/*you can get the question fromE:\project\java_algorithm\C_Algorithem\algorithm01\week01\compareForAndRecursion demo2.bmpor from web:http://www.icourse163.org/learn/ZJU-93

求幂运算、多项式乘法及Horner法则的应用

一,两种不同的求幂运算 求解x^n(x 的 n 次方) ①使用递归,代码如下: 1 private static long pow(int x, int n){ 2 if(n == 0) 3 return 1; 4 if(n == 1) 5 return x; 6 if(n % 2 == 0) 7 return pow(x * x, n / 2); 8 else 9 return pow(x * x, n / 2) * x; 10 } 分析: 每次递归,使得问题的规模减半.2到6行操作的复杂度为