我知道我没有在某处定义对角线,但这是我到目前为止所做的:
import math
def compute_height_rectangle(width,diagonal):
height=area/diagonal
return height
height = int(input("Please enter the length of the diagonal: "))
"height = int(height) "
width = int(input("please enter the width: "))
"diagonal = width"
def compute_area_rectangle(width,diagonal):
area=height*width
return area
print(compute_area_rectangle(width,diagonal))
答案 0 :(得分:1)
使用Pythagoras' Theorem,我们注意到:
diagonal^2 = height^2 + width^2 (not python code)
知道对角线总是大于高度,我们有:
height = sqrt(diagonal^2 - width^2)
所以你想要的代码是:
def compute_height_rectangle(width, diagonal):
return (diagonal ** 2 - width ** 2) ** 0.5
def compute_area_rectangle(width, diaognal):
return width * compute_height_rectangle(width, diagonal)
答案 1 :(得分:0)
从不定义对角线因为你有
"diagonal = width"
双引号中的,这使它只是一个字符串。我复制了你的代码并删除了双引号并且没有产生错误。我也会删除:
"height = int(height)"
行,因为不需要将高度指定为整数输入。
对于将来的问题,如果您告诉我们您尝试使用的代码,那将会有所帮助,因此我们也可以发现其他任何错误,这可能会为您节省一些精力:)。