计算距离并打印输出

4
我的任务是在坐标系中计算一个矩形与0/0点之间的距离,并输出一个特定的答案。如果距离小于100m(系统的单位为米,1个单位=1米),则应该打印100m;如果距离小于200m,则打印101m...
我学到可以用勾股定理来计算两个坐标之间的距离,我把它实现到我的程序中(用Python),但是我在输出方面遇到了一些问题。
我们用一个例子来试试:一个坐标为(-400,200);(-300,200);(-300,300);(-400,300)的矩形距离点(0/0)360米远。正确的输出应该是“103m”。
有人以前问过这样的问题,他们说,您必须将距离除以100并将其加到“10 {}”中。
print("10{}m".format(distance//100))

实际上,这适用于1000以下的所有内容。如果坐标是(-4000,2000);(-3000,2000);(-3000,3000);(-4000,3000),正确的距离应该是“3605m”,并且输出应为“136m”。

希望您能理解我的情况/问题!

1个回答

3
print("{:d}m".format(100+(distance//100)))

例如,
In [16]: distance = 50; "{:d}m".format(100+(distance//100))
Out[16]: '100m'

In [17]: distance = 360; "{:d}m".format(100+(distance//100))
Out[17]: '103m'

In [18]: distance = 3605; "{:d}m".format(100+(distance//100))
Out[18]: '136m'

谢谢!“:d”代表什么? - ThinkDifferent
1
:d 将值格式化为整数。如果输入不是整数,则会引发 ValueError。即使您删除 :d,结果在这里也将相同,但我想强调期望的输入是整数。 - unutbu

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