数值分析:用二分法求方程f(x)=x^3+4*(x^2)-10在区间[1,1.5]上的根,要求求出具有3位有效数的近似根.我的程序如下:#includefloat f(float x){\x05return x*x*x+4*x*x-10;}void main(){float a,b,c;a=1.0;b=1.5;for(;;){if(b-a>=
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/02 05:52:28
![数值分析:用二分法求方程f(x)=x^3+4*(x^2)-10在区间[1,1.5]上的根,要求求出具有3位有效数的近似根.我的程序如下:#includefloat f(float x){\x05return x*x*x+4*x*x-10;}void main(){float a,b,c;a=1.0;b=1.5;for(;;){if(b-a>=](/uploads/image/z/2737796-68-6.jpg?t=%E6%95%B0%E5%80%BC%E5%88%86%E6%9E%90%EF%BC%9A%E7%94%A8%E4%BA%8C%E5%88%86%E6%B3%95%E6%B1%82%E6%96%B9%E7%A8%8Bf%28x%29%3Dx%5E3%2B4%2A%28x%5E2%29-10%E5%9C%A8%E5%8C%BA%E9%97%B4%5B1%2C1.5%5D%E4%B8%8A%E7%9A%84%E6%A0%B9%2C%E8%A6%81%E6%B1%82%E6%B1%82%E5%87%BA%E5%85%B7%E6%9C%893%E4%BD%8D%E6%9C%89%E6%95%88%E6%95%B0%E7%9A%84%E8%BF%91%E4%BC%BC%E6%A0%B9.%E6%88%91%E7%9A%84%E7%A8%8B%E5%BA%8F%E5%A6%82%E4%B8%8B%EF%BC%9A%23includefloat+f%28float+x%29%7B%5Cx05return+x%2Ax%2Ax%2B4%2Ax%2Ax-10%3B%7Dvoid+main%28%29%7Bfloat+a%2Cb%2Cc%3Ba%3D1.0%3Bb%3D1.5%3Bfor%28%3B%3B%29%7Bif%28b-a%3E%3D)
数值分析:用二分法求方程f(x)=x^3+4*(x^2)-10在区间[1,1.5]上的根,要求求出具有3位有效数的近似根.我的程序如下:#includefloat f(float x){\x05return x*x*x+4*x*x-10;}void main(){float a,b,c;a=1.0;b=1.5;for(;;){if(b-a>=
数值分析:用二分法求方程f(x)=x^3+4*(x^2)-10在区间[1,1.5]上的根,要求求出具有3位有效数的近似根.
我的程序如下:
#include
float f(float x)
{
\x05return x*x*x+4*x*x-10;
}
void main()
{
float a,b,c;
a=1.0;
b=1.5;
for(;;)
{
if(b-a>=0.005)
\x05{
\x05c=(a+b)/2;
\x05if(f(a)*f(c)==0)
\x05\x05break;
\x05else if(f(a)*f(c)0)
\x05\x05a=c;
\x05}
\x05else
\x05\x05break;
}
printf("二分结果为%f\n",c);
printf("保留三位有效数字为%0.2f\n",c);
}
我想知道我的程序是否正确,如果正确的话那么那个跳出循环的判断为何是if(b-a>=0.005),为何不是if(b-a>=0.01),或者它有固定的算法,下面是我的程序运行结果图,
数值分析:用二分法求方程f(x)=x^3+4*(x^2)-10在区间[1,1.5]上的根,要求求出具有3位有效数的近似根.我的程序如下:#includefloat f(float x){\x05return x*x*x+4*x*x-10;}void main(){float a,b,c;a=1.0;b=1.5;for(;;){if(b-a>=
你的程序我感觉是对的,我没有运行看看啊
你那个if判断,牵扯到数学问题,不在程序中讨论,其实那个都可以跳出循环,只是精度问题
就是感觉的你的算法也就是程序思路不怎么好
for(;b-a>=0.005;)
{
c=(a+b)/2;
if(f(c)==0)
break;
if(f(a)*f(c)>0)
a=c;
else
b=c;
}