当前位置: 首页 > 知识库问答 >
问题:

如何计算以N为底的大整数对数?

郎意
2023-03-14

我使用这个BigInteger.js进行一些计算:

let myBigInt = bigInt(20).pow(200) // gets 160693804425899027554196209234116260252220299378279283530137600000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000

我想把对数应用到大整数,但是在文档中我找不到任何匹配的函数。如何为BigInteger.js库实现log(basN, value eX)函数?

注意:让myLogarithm=myBigInt。日志(baseN)不是有效的实现。

共有1个答案

伍皓
2023-03-14

注:经过多次尝试后

看看维基百科,就像我所做的那样,因为有一篇关于baseConversion的很好的文章。

在下面,您可以找到一个用于数学的函数。log(base,value)能够根据值计算log(base)

Math.log = (function() {
  var log = Math.log;
  return function(base, n) {
    return log(n)/(base ? log(base) : 1);
  };
})();
 类似资料:
  • 问题内容: 我使用以下函数为整数计算对数基数2: 它是否具有最佳性能? 有人知道为此目的准备好了J2SE API函数吗? UPD1 对于我来说,令人惊讶的是,浮点运算似乎比整数运算要快。 UPD2 由于有评论,我将进行更详细的调查。 UPD3 我的整数算术函数比Math.log(n)/Math.log(2)快10倍。 问题答案: 如果您正在考虑使用浮点数来帮助进行整数运算,则必须小心。 我通常会尽

  • 问题内容: 从有关对数的numpy文档中,我发现了以 e ,2和10为底取对数的函数: 但是,如何在numpy中使用以 n 为底的对数(例如42)? 问题答案: 要使用自定义底数获取对数,请使用: 要使用自定义底数获取对数,请使用: 如您所料,请注意默认情况下。 提醒一下,对数基数更改规则是:

  • 问题内容: 我需要一种方法来计算Python中长整数的第n个根。 我试过了,但是不起作用: OverflowError:long int太大,无法转换为float 有任何想法吗? 长整数是指真正的长整数,例如: 11968003966030964356885611480383408833172346450467339251 1960931441410456834630852911156774884

  • 我最近接受了一次采访,被问到了这个问题。让我适当地解释一下问题: 给定一个数M(n位整数)和K个交换操作(一个交换操作可以交换2位),设计一个算法来得到最大可能的整数? 示例: M=132 K=1输出=312 M=132 K=2输出=321 M=7899 K=2输出=9987 我的解决方案(伪代码中的算法)。我使用max-heap在每个k操作中从n个数字中获得最大的数字,然后适当地交换它。 时间复

  • 我正在研究以下算法,想知道我的实现是否正确: 给定无穷多的硬币、一角硬币、五分硬币和便士,编写代码来计算表示n美分的方式数量 这是没有记忆的:

  • 问题内容: Java中还有其他方法可以计算整数的幂吗? 我现在使用,但是它返回一个,这通常是很多工作,并且在您只想使用s 时看起来不太干净(那么幂也会总是产生)。 有没有像Python 一样简单的东西? 问题答案: 整数只有32位。这意味着其最大值为。如您所见,对于非常小的数字,您很快就会得到不能再用整数表示的结果。这就是使用的原因。 如果要任意整数精度,请使用。但这当然效率较低。

  • 问题内容: 我正在寻找一种Python方式来计算正整数的二进制表示形式中的尾随零数(这将指示最大幂除而无余数)。 一个简单的解决方案: 但是,为了以更Python化的方式进行操作,我认为我可以利用: ,它给出的二进制表示形式 ,它给出了的反向二进制表示形式 因此,我的问题可以简化为对字符串中的尾随零进行计数。 有任何单一陈述的方式可以做到这一点吗? 我的最终目标是一种Python的方法,用于计算其

  • 我试着用一个大整数来计算地球的质量,但实际上有些东西并没有加起来。 我用来计算地球质量的公式是:M=ar2/G=5.98×1024kg。a是重力加速度(9.8 m/s平方),r是地球半径((6.4)*(10^6)),Big-G((6.673)*(10^-11))是重力常数。 我应该得到的值是:5.97219×10^24 kg=597219000000000000000000000000000000