C语言 用递归法求n阶勒让德多项式的值

代码如下:#include<stdio.h>main(){#definex2;intn;floatP(intn);floatc;c=P(n);printf("%f",c)... 代码如下:
#include<stdio.h>
main()
{
#define x 2;
int n;
float P(int n);
float c;
c=P(n);
printf("%f",c);
}
float P(int n)
{
float m;
if(n==0)m=1;
if(n==1)m=x;
if(n>=1)
m=((2*n-1)*x-P(n-1)-(n-1)*P(n-2))/n;
return m;
}
哪里出错了呢?万分感谢!!
展开
 我来答
忘至白葬不情必0T
推荐于2017-12-15 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:90%
帮助的人:1.2亿
展开全部
define语句末尾不要加分号

if(n>=1)
m=((2*n-1)*x-P(n-1)-(n-1)*P(n-2))/n;
改成
if(n>1) //==1是第二种情况写过了
m=((2*n-1)*x*P(n-1)-(n-1)*P(n-2))/n; //-改成*

n都没赋值就用了啊。。。

正确代码如下:
#include<stdio.h>
main()
{
#define x 2
int n=10;
float P(int n);
float c;
c=P(n);
printf("%f",c);
}
float P(int n)
{
float m;
if(n==0)m=1;
if(n==1)m=x;
if(n>1)
m=((2*n-1)*x*P(n-1)-(n-1)*P(n-2))/n;
return m;
}
追问
m=((2*n-1)*x*P(n-1)-(n-1)*P(n-2))/n; //-改成*

把-改为*就和题目不一样了啊……
追答
你自己百度一下勒让德多项式吧,看看到底是-还是*
a1012144015
推荐于2018-02-28 · TA获得超过6416个赞
知道大有可为答主
回答量:9038
采纳率:40%
帮助的人:1579万
展开全部
具体代码如下:
#include<stdio.h>
main()
{
#define x 2
int n=10;
float P(int n);
float c;
c=P(n);
printf("%f",c);
}
float P(int n)
{
float m;
if(n==0)m=1;
if(n==1)m=x;
if(n>1)
m=((2*n-1)*x*P(n-1)-(n-1)*P(n-2))/n;
return m;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
保冬萱t2
2011-11-29 · TA获得超过246个赞
知道小有建树答主
回答量:309
采纳率:0%
帮助的人:219万
展开全部
代码如下:
#include<stdio.h>
#define x 2
float P(int n);
main()
{
int n;
float c;
P(n);
c=P(n);
printf("%f",c);
}
float P(int n)
{
float m;
if(n==0)m=1;
if(n==1)m=x;
if(n>1)
m=((2*n-1)*x-P(n-1)-(n-1)*P(n-2))/n;
return m;
}
没有运行果,改了点语法错误,你试试,不行追问就行
追问
谢啦 编译没有错误 不过我是想问你有哪些语法错误…………
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
清雅还平实的宠物2
2012-10-24
知道答主
回答量:16
采纳率:0%
帮助的人:17.1万
展开全部
改成:
if(n>1)
m=((2*n-3)*x*P(n-1)-(n-1)*P(n-2))/n;
return m;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
秋风逐月wm
2013-03-17
知道答主
回答量:1
采纳率:0%
帮助的人:1620
展开全部
#include<iostream.h>
int ploy(int n,int x);
int main()
{
int n,x,p;
cout<<"Enter two number:";
cin>>n>>x;
p=ploy(n,x);
cout<<p<<endl;
}
int ploy(int n,int x)
{
if(n==0)
return 0;
if(n==1)
return x;
else
return((2*n-1)*x*ploy(n-1,x)-(n-1)*ploy(n-2,x))/n;

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式