最近开发遇到定金支付问题。支付金额为奇数时,定金支付金额为总金额为一半。假设总金额为18746.51RMB。定金支付的话,定金支付金额为9373.25,未支付金额得为9373.26。
刚开始做的时候,cell.priceTextField.text = [NSString stringWithFormat:@"%0.2f",self.payTotal/2)];定金支付的金额和未支付的金额显示都是9373.26。显然这样是不对的。18746.51/2=9373.255.所以用%0.2f直接显示的话,系统四舍五入为9373.26。想办法让定金支付金额后面的小数点只能是2位。最后round(self.payTotal*100/2)/100,这样可以直接得到两位小数的定金支付金额。未支付金额用总金额减去定金支付金额,别直接除以2哟。这个可能只适用于有两位小数的金额,假如需要n位小数可能需要乘10的n次方再除以10的n次方。
个人理解~,如有不对欢迎请指出。