我想计算2个数字。让我们说它们是Double
类型。如果上限必须小于10e130(10到130的幂),我如何对它们求(n1 + n2)
和(n1 * n2)
进行求和。我省略了解析等所涉及的事情。我认为它们都是正确的大数字。我不知道如何实现这一点。
答案 0 :(得分:1)
由于Double值(通常)的范围大于1.0E308左右(只需打印出DBL_MAX或DBL_MAX_10_EXP以查看精确值,假设您使用的是C),您的值为(10 * e)^(103)约为5.4e147,应该很容易在加法或乘法的范围内。现在,如果你需要将3个这样的数字相乘,你就会遇到问题,你可能会面临这些问题
如果没有进一步的申请细节,我无法建议您做哪些事情。 (顺便说一句,因为可观察宇宙中的光子数量就像1.0e90,这些几乎是非物质上的大值,除非这是某种数学事物。)