标题:[讨论]浮点数的高阶为什么出错?
取消只看楼主
bluecer
Rank: 2
等 级:论坛游民
帖 子:42
专家分:76
注 册:2007-4-25
 问题点数:0 回复次数:1 
[讨论]浮点数的高阶为什么出错?

应用Newton法求f(x)=x^41-x^3+1=0在x0=-1附近的实根。要求满足精度|x(k+1)-x(k)|<0.001.

编译报错,希望大家指点一下,为什么会出错?

编程如下:
#include <stdio.h>

void main(void)
{
float xa,xb,m;
int i;

printf("\nx0=");
scanf("%f",&xa);
for(i=1;;i++){
xb=(40*xa^41-2*xa^3-1);
xb/=(41*xa^40-3*xa^2);
m=xb-xa;
printf("\nx%d=%f",i,xb);
printf("x(k+1)-x(k)=%f",m);
if(m<0.001||m>-01001)
break;
xa=xb;
}
printf("*********");
getch();
}

搜索更多相关主题的帖子: 点数 高阶 
2007-04-29 20:22
bluecer
Rank: 2
等 级:论坛游民
帖 子:42
专家分:76
注 册:2007-4-25
得分:0 
问题也就是:浮点数的高阶应怎么表示?
2007-04-29 20:26



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-136059-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.678129 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved