标签: biginteger

检查64位BigInteger是否包含Java中的所有非零高32位?

有人知道怎么做吗 -

检查64位BigInteger是否包含Java中的所有非零高32位?

谢谢!

java math bit-manipulation biginteger bit

0
推荐指数
1
解决办法
302
查看次数

使用.NET BigInteger作为位字段

我想System.Numeric.BigInteger用作位字段.我有1到2 ^ 255范围内的标志.是否有任何性能原因(内存或速度)来编写自定义容器或我可以使用BigInteger它?

.net c# memory performance biginteger

0
推荐指数
1
解决办法
360
查看次数

使用BigIntegers时,代码示例无限循环,但适用于整数

我整数的实际情况是

int d = 1;

while(true)
{
  if(((e*d)%f)==1)
  {
    break;
  }
  else 
    d++;
}
Run Code Online (Sandbox Code Playgroud)

我已经在BigInteger中写了这个条件

while(true)
{
  if(((e.multiply(d)).mod(f)).equals(1))
  {
    break;
  }
  else 
    d=d.add(BigInteger.ONE);
}
Run Code Online (Sandbox Code Playgroud)

当我在BigInteger中执行上面的代码时,它会无限执行.但是,当我以整数执行代码时,它会完美地执行并从循环中退出.请告诉我错误是什么.

java biginteger

0
推荐指数
1
解决办法
78
查看次数

无限循环.Java BigInteger

我的Java代码中有以下"while"循环.我的代码中的所有变量都是BigIntegers.

BigInteger d=new BigInteger("1");
BigInteger e=new BigInteger("3");
BigInteger phi1=new BigInteger("6336");
while(true)
{
    if(((d.multiply(e)).mod(phi1)).equals(BigInteger.ONE))
        break;
    d=d.add(BigInteger.ONE);
    //System.out.println(d);
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,循环无限执行.但我想在以下条件下添加休息:

if((d*e)%phi1==1)
    break;
Run Code Online (Sandbox Code Playgroud)

我已经转换成BigInteger了

if(((d.multiply(e)).mod(phi1)).equals(BigInteger.ONE))
    break;
Run Code Online (Sandbox Code Playgroud)

我哪里弄错了?任何人都可以告诉为什么循环无限执行?

java biginteger

0
推荐指数
1
解决办法
195
查看次数

没有新运算符将BigInteger转换为BigDecimal

如何BigIntegerBigDecimal不使用new运算符的情况下将值转换为?

例如,如果我有一个整数值,如:

abc=4000. 
Run Code Online (Sandbox Code Playgroud)

我应该得到输出:

xyz= 4000.0
Run Code Online (Sandbox Code Playgroud)

java biginteger bigdecimal

0
推荐指数
1
解决办法
3044
查看次数

是否有可能获得大整数实例的自然日志?

我在JavaScript中使用大整数.

var bigInt = require('big-integer')
Run Code Online (Sandbox Code Playgroud)

我有一个bigInt实例:

var ratherLargeNumber = bigInt(2).pow(2048)
Run Code Online (Sandbox Code Playgroud)

我可以得到它的(自然)记录吗?

javascript math biginteger node.js

0
推荐指数
1
解决办法
501
查看次数

测试一个大整数是否为2的幂

给定一个整数(以二进制形式存储),如何快速测试它是否为2的幂,即对于整数指数k等于2?

一个简单但相当慢的方法是连续除以2直到数字变为2或者存在非零余数.不幸的是,我们需要执行尽可能多的分区,因为我们的号码中有数字.

对于小整数,有许多解决方案,包括位计数等.我对具有任意位数的整数的快速解决方案感兴趣.例如,我们可以通过一些快速整数除以2或其他欺骗加速上述方法吗?

algorithm biginteger

0
推荐指数
1
解决办法
553
查看次数

如何在golang中将uint64转换为big.Int?

我想知道如何将其转换uint64big.Intgolang?最短的路.

我试过了new(big.Int).SetInt64(int64(a uint64 number)).

我不喜欢它导致它很长,嵌套转换太多,如果它存在,我宁愿使用内置函数.

biginteger type-conversion go

0
推荐指数
1
解决办法
1598
查看次数

如何将double值转换为大整数或长整数

需要将double值转换为大整数或长整数.尝试使用大整数但转换后的值与原始值不同.

double doub = 123456789123456789123456789d;
BigDecimal bd = BigDecimal.valueOf(doub);
System.out.println("value=="+bd.toBigInteger());

value==123456789123456790000000000

Expected output: 123456789123456789123456789
Run Code Online (Sandbox Code Playgroud)

java double biginteger

0
推荐指数
1
解决办法
154
查看次数

Java BigInteger添加看起来不对

我有两个字节数组,我试图添加使用

BigInteger n1=new BigInteger(byte[] a1);
BigInteger n2=new BigInteger(byte[] a2);
BigInteger sum=a1.add(a2);
byte[] as=sum.toByteArray();
Run Code Online (Sandbox Code Playgroud)

这就是我得到的:

a1=4A4A3E502602CE0C3D1792D5A2C6BADFE701E5C668FBE1D92F19923CD2A5143B
a2=FFE735AE9FB702A6C08D3ED57CB6CCF7CBB74F6F8D3F820A837A9775AF953F0D
as=4A3173FEC5B9D0B2FDA4D1AB1F7D87D7B2B93535F63B63E3B29429B2823A5348
Run Code Online (Sandbox Code Playgroud)

查看最重要的字节,添加0x4A和0xFF会生成丢失的进位.我希望添加两个32字节整数将导致33字节整数(这种情况,因为有一个进位).

java biginteger

0
推荐指数
1
解决办法
57
查看次数