C语言怎么样用二分法求方程的解用二分法求2X^3
2个回答
展开全部
代码懒得写了写个步骤把
设f(x) = 2X^3
1 设置两个变量 a和b初值等于0
2 然后a增大b减小,直到 f(a)和f(b)一正一负
3 判断f( (a + b) / 2)是否等于0,等于0则转到8
4 判断f( (a + b) / 2) 和f(b)判断是否同号
5 若同号则b = (a + b) / 2 否则 a = (a + b) / 2
6 判断a-b是否足够小 例如 a-b< 0.00001
7 足够小则认为a+b/2为根 不够小则转到3、
8 输出答案
===========分隔符============
如果是不限定方程的形式,而且要求求出全部解的话
把上面步骤稍微改一下,并且要先顶一下根的范围比如(-100000,100000)
ab初值为-100000,a逐渐增加,直到f(a)f(b) 异号,然后求根步骤同上
求出一个根以后 让b等于这个根,a继续增加,直到f(a)f(b)再次异号,再求出根,直到a大于100000以后,认为没有根
设f(x) = 2X^3
1 设置两个变量 a和b初值等于0
2 然后a增大b减小,直到 f(a)和f(b)一正一负
3 判断f( (a + b) / 2)是否等于0,等于0则转到8
4 判断f( (a + b) / 2) 和f(b)判断是否同号
5 若同号则b = (a + b) / 2 否则 a = (a + b) / 2
6 判断a-b是否足够小 例如 a-b< 0.00001
7 足够小则认为a+b/2为根 不够小则转到3、
8 输出答案
===========分隔符============
如果是不限定方程的形式,而且要求求出全部解的话
把上面步骤稍微改一下,并且要先顶一下根的范围比如(-100000,100000)
ab初值为-100000,a逐渐增加,直到f(a)f(b) 异号,然后求根步骤同上
求出一个根以后 让b等于这个根,a继续增加,直到f(a)f(b)再次异号,再求出根,直到a大于100000以后,认为没有根
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询