沿直线 a b c 的变量求三角形的面积
find the area of a triangle along the variables of the straight line a b c
我有直线 ax + by + c 的输入系数。我找到 x 和 y 坐标来找到由穿过 x 和 y 轴的直线形成的直角三角形的面积。但是在测试中如果 a = 1 b = 1 c = -2
面积将是 0.5,而不是 2。
如何解决?
a = int(input())
b = int(input())
c = int(input())
y = 0*a + b + c
x = a + 0*b + c
sAbc = 1/2 * a*b
print(sAbc)
您使用的公式有误。
a = int(input())
b = int(input())
c = int(input())
area = abs((c^2)/(a*b))/2
print(area)
这个问题应该在 Math Whosebug 上问,因为数学有问题。
首先,让我们计算 y-intercept:
a*0 + b*y + c = 0
y = - c/b
(我们稍后会处理竖线和横线)
同样,我们计算 x-intercept:
a*x + b*0 + c = 0
x = - c/a
最后,区域是
# A = abs(0.5 * x * y) = abs(0.5 * (-c/a) * (-c/b)) = abs(0.5 * c * c / a / b)
A = abs(0.5 * c * c / a / b)
但是,我们需要分别处理垂直线和水平线。
if a == 0 or b == 0:
print(0)
else:
print(abs(0.5 * c * c / a / b))
我有直线 ax + by + c 的输入系数。我找到 x 和 y 坐标来找到由穿过 x 和 y 轴的直线形成的直角三角形的面积。但是在测试中如果 a = 1 b = 1 c = -2 面积将是 0.5,而不是 2。
如何解决?
a = int(input())
b = int(input())
c = int(input())
y = 0*a + b + c
x = a + 0*b + c
sAbc = 1/2 * a*b
print(sAbc)
您使用的公式有误。
a = int(input())
b = int(input())
c = int(input())
area = abs((c^2)/(a*b))/2
print(area)
这个问题应该在 Math Whosebug 上问,因为数学有问题。
首先,让我们计算 y-intercept:
a*0 + b*y + c = 0
y = - c/b
(我们稍后会处理竖线和横线) 同样,我们计算 x-intercept:
a*x + b*0 + c = 0
x = - c/a
最后,区域是
# A = abs(0.5 * x * y) = abs(0.5 * (-c/a) * (-c/b)) = abs(0.5 * c * c / a / b)
A = abs(0.5 * c * c / a / b)
但是,我们需要分别处理垂直线和水平线。
if a == 0 or b == 0:
print(0)
else:
print(abs(0.5 * c * c / a / b))