所以我想计算一个长方体中两个最远点的距离。这个数学方程是z ^ 2 = a ^ 2 + b ^ 2 + c ^ 2但是当我这样做时它没有正确返回。
from math import *
dimension = input("What dimension: ")
if dimension == ("3D") or dimension == ("3d") or dimension == ("3"):
a = int(input("a = "))
b = int(input("b = "))
c = (sqrt((a**2) + (b**2)))
z = (sqrt((a**2) + (b**2) + (c)))
rounded_z = round(z, 4)
print(rounded_z,'cm')
else:
a = int(input("a = "))
b = int(input("b = "))
c = (sqrt((a**2) + (b**2)))
rounded_c = round(c, 2)
print(rounded_c,'cm')
例如:
如果a = 6
和b = 2
它应该是7厘米Source。但它返回6.8062 !!为什么?请帮忙。
答案 0 :(得分:1)
我认为你误解了3D长方体。在3D中,您需要有三个输入,而不是两个输入。更正后的代码如下:
import math
dimension = input("What dimension: ")
if dimension == ("3D") or dimension == ("3d") or dimension == ("3"):
a = int(input("a = "))
b = int(input("b = "))
c = int(input("c = "))
z = math.sqrt(a**2 + b**2 + c**2)
rounded_z = round(z, 4)
print(rounded_z,'cm')
else:
a = int(input("a = "))
b = int(input("b = "))
c = (math.sqrt((a**2) + (b**2)))
rounded_c = round(c, 2)
print(rounded_c,'cm')
根据您的来源测试: a = 2,b = 3,c = 6产生7,如你所愿。
答案 1 :(得分:1)
在第二种情况下,您正在计算,这看起来对我来说是正确的三角形。但答案是不是7.而且它不是一个长方体。
在3d情况下,您正在计算看起来各种错误的。
为什么不解释你想要计算的内容,以及你是否要查看2d案例或3d案例?如果您对长方体感兴趣,为什么要问维数?