3D 毕达哥拉斯程序没有返回正确的结果
3D Pythagoras program not returning correct results
所以我想计算一个长方体中最远的两个点的距离。这个的数学方程式是 z^2 = a^2 + b^2 + c^2 但是当我这样做时它 return 不正确。
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。但是它 returns 6.8062!!为什么?请帮忙
我想你误解了 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。
在 2d 情况下,您正在计算 ,这对我来说对于三角形来说是正确的。但答案不是7,也不是长方体。
在 3d 情况下,您计算的 看起来各种错误。
你为什么不说明你要计算什么,你要看2d的情况还是3d的情况?如果您对长方体感兴趣,为什么要问维数?
所以我想计算一个长方体中最远的两个点的距离。这个的数学方程式是 z^2 = a^2 + b^2 + c^2 但是当我这样做时它 return 不正确。
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。但是它 returns 6.8062!!为什么?请帮忙
我想你误解了 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。
在 2d 情况下,您正在计算 ,这对我来说对于三角形来说是正确的。但答案不是7,也不是长方体。
在 3d 情况下,您计算的 看起来各种错误。
你为什么不说明你要计算什么,你要看2d的情况还是3d的情况?如果您对长方体感兴趣,为什么要问维数?