急!请高手看一下我的这个C程序(计算立方根,不能用pow函数)到底哪里错啦。运行的结果为什么总是0?

[复制链接]
查看11 | 回复1 | 2011-4-22 06:03:52 | 显示全部楼层 |阅读模式
#includestdio.h
#includemath.h
void main()
{

float i,j,t,x;

printf(\"please input a positive number:\");

scanf(\"%5.2f\",

if(x!=1.00)

{i=0.00,j=x/2.00,t=x;

do

{if(j*j*jx)t=j,j=(t i)/2.00;break;

if(j*j*jx)i=j,j=(i t)/2.00;break;

}

while(fabs(x-j*j*j)1e-5);

}

else j=1.00;
printf(\"the number is %8.5f\\n\",j);
}
回复

使用道具 举报

千问 | 2011-4-22 06:03:52 | 显示全部楼层
<pre id=\"best-answer-content\" class=\"reply-text mb10\">你的算法晦涩难懂,可以参考下面的程序。所用公式:
X(n 1)=(Num / X(n) / X(n) - 2 * X(n))/ 3

#includestdio.h
#includemath.h

void main()
{

double num;

double guess;


printf(\"please input a positive number : \");

scanf(\"%lf\",


guess = num/2;

while(1)

{

if(fabs(guess*guess*guess-num)1e-5)

break;

guess = (num/guess/guess 2*guess)/3;

}

printf(\"the number is %8.5f\\n\", guess);
}
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行