当我尝试打印时info(numeralsToTxt(3492.4069));
它给出了我作为*** Three Thousand Four Hundred Ninety Two and 41/100
的输出。现在,当我检查方法numbersToTxt()时,我希望它为*** Three Thousand Four Hundred Ninety Two and 406/1000
我发现函数frac()
返回.41
请帮忙。
答案 0 :(得分:1)
frac()
没有返回.41。它是decRound(frac(_num), 2)
,返回.41。 decRound方法的第二个参数是你想要的小数位数。
你能做的就是改变
int numOfPennies = (decRound(frac(_num), 2) * 100) mod 100;
到
int numOfPennies = (decRound(frac(_num), 3) * 1000) mod 1000;
然后,更改numeralsToTxt
方法底部的输出字符串,以显示'/1000'
而不是'/100'
实际输出将是407/1000,而不是406/1000,因为它会向上舍入。