作业帮 > 综合 > 作业

首先是题目:程序填空,不要改变与输入输出有关的语句.输入一个正整数repeat (01)例:括号内是说明输入3\x05

来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/19 18:46:56
首先是题目:
程序填空,不要改变与输入输出有关的语句.
输入一个正整数repeat (01)
例:括号内是说明
输入
3\x05 (repeat=3)
0 \x050.9\x05(n=0,x=0.9)
1 \x05-9.8\x05(n=1,x=-9.8)
10 \x051.7\x05(n=10,x=1.7)
输出
p(0,0.90)=1.00
p(1,-9.80)=-9.80
p(10,1.70)=3.05
①上传上去总说答案错误,但我找不到哪里不对.真心请高手指教.
②另外还想问在自定义函数里面,是不能直接把P(n,x)写进去的吧?因为函数还没定义完?.
③主函数末尾不写 return 0即不返还数值也是ok的吗?
那能帮我仔细看吗?.
首先是题目:程序填空,不要改变与输入输出有关的语句.输入一个正整数repeat (01)例:括号内是说明输入3\x05
①没帮你仔细看
②在自定义函数里面,能直接把P(n,x)能写进去,这叫递归调用.
p这样写:
double p(int n,double x)
{
double product;
if(n==0)
product=1;
else if(n==1)
product=x;
else{
product= ((2*n-1)*p(n-1,x)-(n-1)*p(n-2,x))/n;
}
return product;
}
③主函数末尾不写return 0可以,但是编译器有警告.如果主函数末尾不写return,最好把主函数的返回值写成void main(void)
再问: 那能帮我仔细看吗??。。。
再答: product=(2*i-1)*k-(i-1)*m/i;这句错了,注意看题目啊,同学 题目上是((2*n-1)*p(n-1,x)-(n-1)*p(n-2,x))/n (n>1) (2*i-1)*k-(i-1)*m/i应该改为((2*i-1)*k-(i-1)*m)/i 还有如果用上面给的递归写,会简单很多。