分数 2
作者 Yiping
单位 广东东软学院
现有如下程序,请将注释后带??的代码补充完整:
import math
def normalize(normal):
x = normal[0]
y = normal[1]
z = normal[2]
s = math.sqrt(x**2 + y**2 + z**2)
x /= s
y /= s
z /= s
return (x, y, z)
if __name__ == '__main__':
input = input() # 一定要输入三元浮点元组
# 将字符串转为元组
temp = ??
normal = tuple(??)
# 此处调用上面的函数
normal = ??
print(normal)
归一化(Normalize)介绍 https://zhuanlan.zhihu.com/p/112509178
输入为一个由3个浮点数组成的元组。
输出为一个归一化以后的三元元组。
在这里给出一组输入。例如:
(1.0, 1.2, 2.0)
在这里给出相应的输出:
(0.39405520311955033, 0.4728662437434604, 0.7881104062391007)
import math
def normalize(normal):
x = normal[0]
y = normal[1]
z = normal[2]
s = math.sqrt(x**2 + y**2 + z**2)
x /= s
y /= s
z /= s
return (x, y, z)
if __name__ == '__main__':
input = input() # 一定要输入三元浮点元组
# 将字符串转为元组
temp = input[1:-2].split(",")
normal = tuple( float(i) for i in temp)
# 此处调用上面的函数
normal = normalize(normal)
print(normal)