钱珀瑙恩常数

论坛 期权论坛 脚本     
匿名技术用户   2020-12-28 04:43   92   0

将所有正整数连接起来构造的一个十进制无理数如下所示:

0.123456789101112131415161718192021…

可以看出小数点后第12位数字是1。

如果dn表示上述无理数小数点后的第n位数字,求下式的值:

640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1

python实现:

def create(length):#首先生成一个10进制无理数字串,length表示d下标最大值
    result_str=''
    element=1
    temp_length=0
    while temp_length<length:
        result_str+=str(element)
        element+=1
        temp_length=len(result_str)
    return result_str

def seek_num(result_str,a):#a代表无理数位串的位置,该函数范围特定位置的数字
    num=int(result_str[a-1])
    return num

if __name__ == '__main__':
    result_str=create(1000000)
    sum_num=seek_num(result_str,1)*seek_num(result_str,10)*seek_num(result_str,100)\
            *seek_num(result_str,1000)*seek_num(result_str,10000)\
            *seek_num(result_str,100000)*seek_num(result_str,1000000)
    print(sum_num)

转载于:https://my.oschina.net/u/3641281/blog/1572673

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:7942463
帖子:1588486
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP