问题标签 [arbitrary-precision]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
18 回答
11257 浏览

programming-languages - 哪些编程语言支持任意精度算术?

哪些编程语言支持任意精度算术,你能举一个简短的例子来说明如何打印任意数量的数字吗?

0 投票
8 回答
964 浏览

math - 任意精度算术是否会影响数值分析软件?

任意精度算术是否会影响数值分析软件

我觉得大多数数值分析软件继续使用相同的浮点数和双精度数。

如果我是对的,我很想知道原因,因为在我看来,有一些计算可以从使用任意精度算术中受益,特别是当它与有理数表示结合使用时,如在GNU Multi-Precision Library上完成。

如果我错了,例子会很好。

0 投票
6 回答
33137 浏览

python - 什么类用于货币表示?

我应该使用什么类来表示货币以避免大多数舍入错误?

我应该使用Decimal,还是简单的内置number

有没有Money我可以使用的支持货币转换的现有课程?

我应该避免的任何陷阱?

0 投票
3 回答
1548 浏览

c++ - Bignum 实现有效地添加小整数

我一直在使用 python 的原生 bignums 作为算法,并决定尝试通过将其转换为 C++ 来加速它。当我使用 long long 时,C++ 比 python 快大约 100 倍,但是当我在 C++ 中使用 GMP 绑定时,它只比 python 快 10 倍(对于适合 long long 的相同情况)。

是否有更好的 bignum 实现来进行大量的小加法?例如,我们有一个大数字 N,我们将添加很多小的 +1、+21、+1 等,并且每隔一段时间添加另一个大数字 M?

0 投票
2 回答
1202 浏览

c - 最快的半任意精度数学库是什么?

我正在使用long double inC 程序来计算 Mandelbrot 集的 2D 图像,但希望更精确地放大。

任意精度数学库是否有任何性能提升,可以根据需要限制精度数量,而不是从long double精度直接跳到任意精度?

哪个是任意精度数学库中最快的?

0 投票
2 回答
2107 浏览

python - 小数精度的分数

是否有fractions.Fraction支持longs 作为分子和分母的纯 python 实现?不幸的是,幂运算似乎被编码为返回一个浮点数(ack!!!),它至少应该支持使用decimal.Decimal.

如果没有,我想我可能可以制作图书馆的副本并尝试float()用适当的东西替换出现的东西,Decimal但我更喜欢以前被其他人测试过的东西。

这是一个代码示例:

导致0.0 <type 'float'>答案应该是一个非常小的小数。

更新:我现在有以下解决方法(假设对于 a**b,两者都是分数;当然,当 exp_ 是浮点数或本身是小数时,我需要另一个函数):

这给出了答案 4.08569925773896097019795484811E-516。

如果没有额外的功能,如果有更好的方法来做这件事,我仍然会感兴趣(我猜如果我使用这个Fraction类足够多,我会发现其他浮点数进入我的结果)。

0 投票
2 回答
2040 浏览

perl - 如何在 Perl 中使用任意长度的整数?

是否有任何标准方法可以在 Perl 中使用任意长度的整数?我正在编写为测试生成 x64 程序集的代码,我厌倦了一次操作 32 位。

我正在使用 Perl 5.10.0,因为它的价值。

0 投票
1 回答
1467 浏览

php - bcmath PHP 库的精度是多少?

我正在编写一个 PHP 库,它有一个 Number 类,该类使用bcmath扩展来实现任意精度。

我有两个问题:

  1. 与使用内置的 int 和 float 类型相比,bcmath 慢了多少?

  2. bcmath有一个可选的比例参数(默认为 3 位)。对于任何人都可以使用的通用 Number 类,什么是好的精度水平?像 Perl 这样的语言(具有任意精度数字)如何处理规模?

0 投票
1 回答
373 浏览

php - 在 PHP 中使用任意精度库进行舍入

我之前问了一个关于如何处理 PHP 中浮点数的舍入问题的问题,并被指向bcandgmp库。

我已经查看了这些库中的函数,但是当我在寻找一个来四舍五入数字时,我什么也没想到。

您如何准确地使用这些库进行舍入?

0 投票
5 回答
2430 浏览

ruby - 使用 Ruby 进行任意精度算术运算

Ruby 到底是怎么做到的?Jörg 或其他人是否知道幕后发生的事情?

不幸的是,我不太了解 C,所以bignum.c对我帮助不大。我只是有点好奇,有人可以(用简单的英语)解释它使用的任何奇迹算法背后的理论。

368063488259223267894700840060521865838338232037353204655959621437025609300472231530103873614505175218691345257589896391130393189447969771645832382192366076536631132001776175977932178658703660778465765811830827876982014124022948671975678131724958064427949902810498973271030787716781467419524180040734398996952930832508934116945966120176735120823151959779536852290090377452502236990839453416790640456116471139751546750048602189291028640970574762600185950226138244530187489211615864021135312077912018844630780307462205252807737757672094320692373101032517459518497524015120165166724189816766397247824175394802028228160027100623998873667435799073054618906855460488351426611310634023489044291860510352301912426608488807462312126590206830413782664554260411266378866626653755763627796569082931785645600816236891168141774993267488171702172191072731069216881668294625679492696148976999868715671440874206427212056717373099639711168901197440416590226524192782842896415414611688187391232048327738965820265934093108172054875188246591760877131657895633586576611857277011782497943522945011248430439201297015119468730712364007639373910811953430309476832453230123996750235710787086641070310288725389595138936784715274150426495416196669832679980253436807864187160054589045664027158817958549374490512399055448819148487049363674611664609890030088549591992466360050042566270348330911795487647045949301286614658650071299695652245266080672989921799342509291635330827874264789587306974472327718704306352445925996155619153783913237212716010410294999877569745287353422903443387562746452522860420416689019732913798073773281533570910205207767157128174184873357050830752777900041943256738499067821488421053870869022738698816059810579221002560882999884763252161747566893835178558961142349304466506402373556318707175710866983035313122068321102457824112014969387225476259342872866363550383840720010832906695360553556647545295849966279980830561242960013654529514995113584909050813015198928283202189194615501403435553060147713139766323195743324848047347575473228198492343231496580885057330510949058490527738662697480293583612233134502078182014347192522391449087738579081585795613547198599661273567662441490401862839817822686573112998663038868314974259766039340894024308383451039874674061160538242392803580758232755749310843694194787991556647907091849600704712003371103926967137408125713631396699343733288014254084819379380555174777020843568689927348949484201042595271932630685747613835385434424807024615161848223715989797178155169951121052285149157137697718850449708843330475301440373094611119631361702936342263219382793996895988331701890693689862459020775599439506870005130750427949747071390095256759203426671803377068109744629909769176319526837824364926844730545524646494321826241925107158040561607706364484910978348669388142016838792902926158979355432483611517588605967745393958061959024834251565197963477521095821435651996730128376734574843289089682710350244222290017891280419782767803785277960834729869249991658417000499998999