将以米为单位给出的身高转换为英尺和英寸?

6

问题如下:

假设1英尺=.3048米,请编写一个Python脚本,将以米为单位给出的身高转换为以英尺和英寸表示的身高。

我看了一下教授当天给的笔记,并按照每个步骤进行了操作,但我的程序似乎无法正常工作。这是我的代码:

print("This program will convert a height given meters to a height given in feet and inches.")
meters = float(input("Enter height in meters:"))
meters_in_ft = meters // .3048
meters_in_in = meters_in_ft % 12
print("The height is", meters_in_ft,"feet and",meters_in_in, "inches")

当我运行程序并输入某些米数时,能够正确地将其转化为英尺,但很多情况下,英寸的计量值是错误的。

1
你能具体说明比“错了”更多吗?你的输入是什么,期望的输出和实际输出分别是什么? - jonrsharpe
根据谷歌,1米等于3.2808399英尺(3英尺3⅜英寸)。 - mmachine
2个回答

9

要从米获取英寸部分,您需要使用% 1获取米 / .3048的小数部分。 然后,可以通过乘以12将其转换为英寸。

inches = meters / .3048 % 1 * 12

非常感谢,这最终起作用了。我会继续练习,确保我能够正确使用这个函数。再次感谢。 - ognimoddd

0

针对从谷歌搜索而来的其他访客的快速回答:

米转英尺+英寸

feet = int(meters / 0.3048)
inches = meters / 0.3048 % 1 * 12
inches = round(inches)  #optional

英尺和英寸转换为米

meters = (feet + inches/12)*0.3048

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接