如何查找数字的日志?

时间:2012-04-02 08:04:54

标签: c++ math logarithm bignum

我有一个18位数的数字(num1)。我将它存储在整数数组中。 我有另一个数字(num2)也是18位数。这也存储在整数数组中。

我必须找到第一个数字的日志到第二个数字的基数(log num1到base num2)。

如何在C ++中执行此操作?我无法使用日志功能,因为数字存储在数组中。

1 个答案:

答案 0 :(得分:2)

谷歌的关键术语是bigint。有各种C ++库支持bigints(即,只要你的内存允许,数字就可以了。)

我自己使用的唯一bigint库是GMP。但是,如果你只需要bigints上的单个函数(log,在你的情况下),那么可能需要一些较小的库(更实用)。

刚刚查看了GMP页面,顺便说一句,它全部称为bignums。因此,这可能是搜索解决方案时使用的另一个有用术语。 ; - )