Java Open Maple-处理非常大的数字

时间:2016-04-14 16:26:24

标签: java maple

我在一个项目中使用Java Open Maple Library,我想知道如何将一个大整数传递给Maple引擎?我使用Java类BigInteger来表示我非常大的数字。但Maple不提供此类的支持。唯一支持的类型是int,double和long。有没有人为此找到解决方法?

谢谢。

1 个答案:

答案 0 :(得分:0)

这不是一个理想的解决方案,但从引用任意精度整数的com.maplesoft.openmaple.Numeric对象开始,您可以:

  1. 在关联的Maple会话中将整数保存到变量,例如 n
  2. 通过迭代除以2 ^ 64将 n 拆分为64位块。在Maple中,您可以在除以2 ^ 64之后计算余数,同时用

    更新'n'的值
    r := iquo(n, 2^64, 'n');
    

    com.maplesoft.openmaple.Algebraic上使用eval方法计算余数后,您可以调用 longValue()方法将其表示为long。

  3. 从所有这些64位块中构建BigInteger