在处理双精度数时,经常会涉及到拆分双精度数的整数和小数部分。有一下几种解决方案:
 
一、解决这个问题我们首先想到的可能是通过几个取整函数,先求取整数部分,然后利用差值求取小数部分。取整函数包括最近取整、向上取整、向下取整,由于涉及到舍入的问题,所以拆分起来比较困难。
 
二、利用字符串的丰富函数拆分。双精度数转换为字符串后,通过查找小数点的位置,把字符串分解为两个部分,然后再转换为数值。
 
三、利用求商和余数函数拆分。这是我今天要介绍的一个小技巧,对于求商和余数函数,任何情况下,返回的商都是整数,而余数可以是小数,也可以是整数。利用除数为1,就可以拆分双精度数,如下图所示。
 
Picture



Leave a Reply.