永发信息网

这个那错了?利用级数和计算Y=x/1-x^3/3!+x^5/5!-x^7/7!+x^9/9!+..........+(-1)^(n-1)*x^(2n-1)

答案:1  悬赏:20  手机版
解决时间 2021-01-16 04:34
这个那错了?利用级数和计算Y=x/1-x^3/3!+x^5/5!-x^7/7!+x^9/9!+..........+(-1)^(n-1)*x^(2n-1)/(2n-1)!
最佳答案
y=y+(-1.)*t/s; 错了,应改为:

y=y+(-1)^((i-1)/2)*t/s

你忘记了符号的变化,(-1)^(n-1)追问哥哥,为什么我用while(scanf("%d%d",&n,&x)==1)是错的,
用scanf("%d%f",&n,&x);是对的啊追答这涉及到浮点数运算,它需要用浮点数寄存器的,x是float,它是浮点数,所以必须用%f, 而%d并不会去初始化并将输入值放入浮点数寄存器。所以一般使用时只要记住格式符必须与变量类型相对应。 如果有用请不要忘记采纳一下。:)追问这个为什么输入一个是对的,输入2个以上就错了
#include
int main()
{
int n,i,j;
float x,y,t=1.,s=1.;
while (scanf("%d %f",&n,&x)==2)
{ y=x/1;
t=t*x;
for (i=3;i<=2*n-1;i=i+2)
{t=t*x*x;
s=i*(i-1)*s;
t=-t;
y=y+t/s;
}
printf("%.3f\n",y);
}
}追答这个为什么输入一个是对的,输入2个以上就错了 ??

具体是什么意思?追问输入一组数据后结果是对的,在重新输入这组数据后就错了追答因为t,s的值在第一次运算后变化了。初值不一样了。
解决方法:

while (scanf("%d %f",&n,&x)==2)
{
t=1, s=1;
y=x/1;
...
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
常用滴耳液耳朵里面会有积水吗?
8253的门控信号GATE对计数过程有什么影响?当
怎样检修离合器压盘与从动盘呢?
眼下有皱纹可以完全恢复吗
Shuhao Lin is ___________ NBA player, and
QQ华夏自动攻击的快捷键是什么
中国人口多的好处有哪些?
经常用黄豆做豆浆喝会上火吗
mysql怎么导入大型sql文件
一个女生想去色达.安全吗
有关准备多日终于要取得成功的诗句
北京哪家宾馆酒店有能够容纳350人的会场?
请以“让我悄悄地告诉你”为题目,
铁岭地区水泥企业都有哪些?
猪肠怎么做吃
推荐资讯
求救 我的小6有点失常 我该怎么办
我被骗进mmm网络传销,被骗了55000元!
最近的华润万家在哪
魔兽世界安装时,我关掉了,怎么接着安装啊
我的理想当一名翻译员怎样去实现
weekender girl 罗马音
字节为8比特,字为32比特,怎么运算
五一准备去金华玩,不过路线方面有点问题。。
户用光伏是否可以建在自家院子空地?咨询哪个
商水县周口飞帆钓具哪位知道具体地址啊
家常鲜食店怎么样
苏宁电器(南海大沥新都会广场店)地址在什么地
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?