-
目的
巨大数实现的意义在于,当需要计算的数据,超出计算机可表示范围,那么按照平常的计算方法便会无能为力。这时,便需要一种可以解决更大位数计算的方法,也就是巨大数四则运算所存在的意义。而且我们的巨大数还可以为小数,因此起到增加计算精度的作用,在一些需要对数据进行精确计算的科研实验中,便起到巨大的作用。以int为例,当超过-217483648~2147483647范围数字计算机就不能正常表示。
-
核心技术
-
万进制存储
用那种方式存储?这其实也是很值得深思的问题。
字符数组形式存储:这种方式其实在数据的录入时是很简单便利的,但当我们做到加法时,就发现了它的弊端。进行计算时,由于数组中存的是字符形式的,所以在计算时,需要对ASCII码进行转换,才能计算。这样的话便会增加很大的复杂度。而且还有后面的乘法牵扯复杂进位问题,所以这种方式显然是不合适的。
char类型或double类型:这种方式虽说在录入数据时可能复杂一点,但之后的加法和减法运算可以减轻很大的负担。不过呢,加减法虽说还可以实现,但最终的乘法会导致数据逸出。所以这种方式也不太合理。
万进制存储:其实万进制存储也就是用int类型的数组,