是否有一种方法可以将double-1.2676506002282294E + 30转换为常规的“非指数”表示法

问题描述 投票:4回答:2

如何从[转换Math.Pow(2,1000)

1.0715086071862673E + 301

to

10715086071862673209484250490690681081056140481170553360744375038837035105112493612249319837881569585812759467291755314682518714528569231404359845775746985748039345677748242309854210746050646023723718718741821530430449849835819412612687687691655439460770629145769476869657654637

这是因为我需要找到该数字的所有数字之和。谢谢!

如何将Math.Pow(2,1000)从1.0715086071862673E + 301转换为...

c# double
2个回答
3
投票

您可以使用System.Numerics中的BigInteger。它具有自己的Pow方法。


3
投票

如果尝试转换它,则会失去精度。您可以使用System.Numerics.BigInteger类执行此操作,如下所示:

© www.soinside.com 2019 - 2024. All rights reserved.