![]() |
1
2
如果A和B之间只有一个零点,那就意味着符号(sin(a))!=符号(sin(b))。在用中点替换A或B时,您需要通过这样做来确保情况仍然如此:
符号(x)定义为
|
![]() |
2
2
由于我们考虑的区间内最多有一个零交叉点,因此有三种可能性:
如果平分点是零点,你就完了。 否则,包含零交叉的段的端点上必须有不同的符号。 在其端点具有不同符号的段上重复 |
![]() |
3
1
你差一点就答对了。根据符号更改选择间隔-如果符号在间隔的左右边界之间更改,则选择该间隔:
还要注意,在给定的间隔内,函数可能会跨X轴多次。然后,符号可能在两个间隔中都发生变化,这个函数只会选择正确的一个(从中间到B),您将失去一些解决方案。 |
![]() |
4
1
给定[a,b]丰富区间中的x(a<=x<=b),我们可以说应用程序f:[a,b]->r在[a,b]上有根,即有界区间[a,b]中有一个x满足f(x)=o,条件是且仅当f(a)*f(b)<0。 简单地说,间隔上有一个根,是该间隔上函数更改的符号。 为了找到那个点,我们将使用区间的二进制划分。 我将修改以下代码:
|