几何法与积分法计算指定三角形面积结果不一致的问题排查
嘿,我来帮你捋清楚为啥两种方法结果不一样——问题出在你的积分区间设定错了!
首先先明确我们要算的区域:是正方形$[(-1,-1),(1,-1),(1,1),(-1,1)]$里,满足**$x+y \leq z$**且属于“下半部分”(也就是$x \geq -1$、$y \geq -1$、$y \leq -x$)的三角形区域对吧?你的几何法推导是对的,得到的$\frac{(z+2)^2}{2}$没问题,但积分环节犯了两个关键错误:
1. 错误的x积分范围
你把x的积分区间设成了$[-1,1]$,但实际上我们要考虑的是**$y \geq -1$且$x+y \leq z$**的交集:当$y=-1$时,$x = z - y = z+1$,也就是说x的上限只能到$z+1$(毕竟当$x > z+1$时,$z - x < -1$,此时y的积分上限比下限还小,这部分区域根本不在我们要计算的范围内)。而且结合你说的“下半部分”,z的有效范围应该是$-2 \leq z \leq 0$,这时候$z+1$最大是1(当z=0时),最小是-1(当z=-2时),刚好对应区域的边界变化。
2. 未严格遵循区域限定条件
你的积分只考虑了$x+y \leq z$(也就是$y \leq z -x$),但没结合“下半部分”的$y \leq -x$限定。不过好在当$-2 \leq z \leq 0$时,$z -x \leq -x$,所以y的上限直接取$z -x$就可以,但前提是x的范围必须限制在$[-1, z+1]$里,不然会出现无效的积分区间。
正确的积分推导
我们重新设定积分区间,再算一遍:
$$
\begin{align}
\int_{x=-1}^{x=z+1} \int_{y=-1}^{y=z - x} dy dx &= \int_{-1}^{z+1} (z - x + 1) dx \
&= \left[ zx - \frac{1}{2}x^2 + x \right]_{-1}^{z+1}
\end{align}
$$
代入上下限计算:
- 代入$x=z+1$:
$z(z+1) - \frac{1}{2}(z+1)^2 + (z+1) = \frac{1}{2}z^2 + z + \frac{1}{2}$ - 代入$x=-1$:
$-z - \frac{1}{2} -1 = -z - \frac{3}{2}$ - 两者相减:
$(\frac{1}{2}z^2 + z + \frac{1}{2}) - (-z - \frac{3}{2}) = \frac{1}{2}z^2 + 2z + 2 = \frac{(z+2)^2}{2}$
你看,这样结果就和几何法完全一致了!
备注:内容来源于stack exchange,提问作者Guilherme Marthe

