作为输入,我有一个数字,以美元和美分的价格(例如:10.35)我需要打印美元和美分(基于上面的例子:10 35)。 (输入10.09 - 输出10 09 我创建了代码:
from math import floor, trunc
a = float(input())
r = trunc(a)
k = trunc(a * 100)
k = (k % 100)
if k <= 9:
print(r, "%02d" % (k,))
else:
print(r, k)
但是,当我在自动测试仪上测试时,其中一个条件不起作用。我无法在测试中看到输入,请你告诉我哪里有错误?
答案 0 :(得分:0)
如果输入是一个字符串10.35
(在我看来),你也可以尝试以下(我知道你不是在问这个,但它可能会有所帮助):
a = string(input())
b = a.split(".")
res = b[0] + " " + b[1]
print(res)
输出:
10 35
答案 1 :(得分:0)
你应该测试函数而不是脚本。问题可能是由于没有正确的测试造成的。
试试这个:
from math import trunc
def to_new_format(price):
dolar_part = trunc(price)
cent_part = round(((price % 1) * 100), 3)
return "%i %i" % (dolar_part, cent_part)
input_price = float(input())
print(to_new_format(input_price))