试图找到一种方法来“缩小”一个非常大的数字

时间:2016-02-20 02:31:11

标签: python mathematical-optimization largenumber

我正试图找到一种方法将一百万位+数字转换为可读格式 (例子a * b ^ c + d) 他们是一个简单/快速的方式在python中做到这一点?或者我应该使用其他语言吗?

这就是我现在正在尝试而且非常慢的

            n = 2**1234567890
            base = 32582657

            base2 = 1
            nb= 0

            while base2 < n :
                    base2 = base * base2
                    nb = nb + 1
            base2 = base2 / base
            nb = nb - 1
            j = n - base2

            if n == (base**nb) + j :
                    print('They match')

谢谢

1 个答案:

答案 0 :(得分:0)

您可以压缩此格式的数字:

number = 3245552

if len(str(number)) > 6:
    zeroes = len(str(number)) - 2
    decimal = number / 10.0**zeroes
    print round(decimal, 2), '* 10 ^', zeroes

输出:32.46 * 10 ^ 5