我的Watson Assistant中有一个对话节点,它接受用户提供的数字,然后提供一个响应,其中包含在某个部门中使用的数字:
<? (1000 * ($Number / 6.00)) ?> Grams
问题是这会返回如下消息:(考虑到数字是2)
333.3333333333333 Grams
从6.00中删除.00会导致:
0 Grams
我有什么办法可以绕过分裂的结果吗?理想情况下,我想将其四舍五入到最接近的十的倍数,但将其四舍五入到小数点后2位也是可以接受的。 我希望得到这样的最终消息:
333.33 Grams
答案 0 :(得分:0)
您可以使用ava.lang.Math提供的round()
methods之一。 Watson Assistant allows those methods in the input processing。根据您需要的分数,您需要“按摩”数字。 float和double有round()方法。您可以先应用toDouble()以确保正确处理该数字。
请注意,对how to perform exact and efficient rounding in Java进行了讨论。