像0.4^1亿这样的大浮点数的快速计算,有什么想法吗?嗯...我遇到了一个问题,我有一个超过10^-308的计算(double.net中的最大值)我用一个名为BIGFLOAT的库解决了它http://www.fractal-landscapes.co.uk/bigint.html,我需要什么来计算像0.4^(1000or100000000)这样的问题我需要长期研究并行或分布式编程但我需要一个快速且易于理解的解决方案我将在完成这个项目在接下来的6小时内!:D这是代码:privateBigFloatgetBlocking(doublek){doublep1,p2;大浮动p3;p3=newBigFloat(pp);p1=this.P/(double)(k/(double)this.N);p2=Math.Pow((1-p1),2);p3=newBigFloat(1-p2,pp);p3.Pow((int)k);返回p3;其中K是1000,N是1001从下载并在您的C#项目中引用MicrosoftJ#.NET库-这样您就可以使用J#的BigDecimal实现。请参阅:C#中的任意精度小数大数:安装J#运行时(免费):http://www.microsoft.com/downloads/en/details.aspx?familyy=f72c74b3-ed0e-4af8-ae63-2f0e42501be1&displaylang=en和:C#中的任意精度小数?和:http://geekswithblogs.net/gyoung/archive/2006/05/01/76869.aspxJ#re-distributables包含经过良好测试的BigInteger和BigDecimal实现,只需引用J#assemblyvjslib.dll中直接使用。NET应用程序。http://download.microsoft.com/download/2/e/9/2e9bde04-3af1-4814-9f1e-733f732369a3/NETMatters0512.exe对此进行了进一步讨论。它还包含一些非常有用的Zip类。以及:MSDN-BigInteger、GetFiles等。虽然您可以在网上搜索大量C#、C++和其他各种语言的实现,但这可能不是必需的。如果您不介意依赖J#库,那么您已经有了很多实现。事实上,你有两个。J#运行时库vjslib.dll作为可再发行组件提供,就像.NETFramework一样。您可以从VisualJ#Downloads下载它(它也是通过VisualStudio?安装的先决条件)。就像C#或C++应用程序可以使用Microsoft.VisualBasic.dll(VisualBasic运行时库)一样,C#、VisualBasic?和C++应用程序可以使用J#运行时库及其许多有趣的公开类。如果不需要所有数字,可以使用对数。(0.4^100000000)是log(0.4)*100000000,完全在常规浮点数的范围内。以上是C#学习教程:0.4^1亿这样的大浮点数的快速计算,有什么思路吗?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
