毕氏完美数

概要

回顾完美数,自守数,水仙花数,根号2感受最美公式。

2 \sqrt{2} 2

毕达哥拉斯创立了一个研究天文、几何、数论及音乐的秘密教团。他们本来想要把整个世界都化为数字,但是却找不到任何一条线段能够用来同时度量正方形的对角线与边,于是这个梦想破灭了。是他们发现了 2 \sqrt{2} 2

毕氏完美数无理数的代数证明

无法接受自己发现的 2 \sqrt{2} 2 ,挣扎几百年后最终消失了。但 2 \sqrt{2} 2 的图形证明,最大公度量对后面的求最大公约数很有帮助。这种直尺和圆规的操作还产生了三分律。

a = b , a < b , a > b a=b,a<b,a>b a=b,a<b,a>b

三分律经常出现在代码中。

判断完美数

因子相加等于自己的数,包括1,但不含自己。比如 6 [1, 2, 3],28 [1, 2, 14, 4, 7],496 [1, 2, 248, 4, 124, 8, 62, 16, 31]

def isperfect(n):
    '''
    因子相加等于自己的数,包括1,但不含自己
    6 [1, 2, 3]
    28 [1, 2, 14, 4, 7]
    496 [1, 2, 248, 4, 124, 8, 62, 16, 31]

    '''
    if n <= 1:
        return False, 1
    s = 1
    X = [1]
    for x in range(2, n//2):
        if n % x == 0 and x not in X:#成对添加的,后面的数字可能在前面添加过了
            #print(n / x, X)
            s = int(s + x + n/x)
            X.append(x)
            X.append(int(n / x))
    return s - n == 0, X

验证

======
isperfect(28)
(True, [1, 2, 14, 4, 7])
isperfect(228)
(False, [1, 2, 114, 3, 76, 4, 57, 6, 38, 12, 19])

自守数

平方尾数等于自己的数是自守数。就是平方求余10,100,1000…(10位数的幂)等于自己的数。比如5,平方25的个位是5;25的平方625的尾数是25。

print("the conservative number in 1000",[n for n in range(1, 1000) if (n * n) % (10 ** len(str(n))) == n])

验证

the conservative number in 1000 [1, 5, 6, 25, 76, 376, 625]

程序求了一千以内的自守数。

水仙花数

自幂数是指一个 n 位数,它每位上的数字的 n 次幂之和等于它本身。
同类的还有独身数、水仙花数、四叶玫瑰数、五角星数、六合数、北斗七星数、八仙数、九九重阳数

代码

    def f(n):
        for i in range(10**(n - 1), 10**n):
            sum = 0
            temp = i
            #0也是False,None,"",(),[],{}
            while temp:
                sum += (temp%10) ** n
                temp = int(temp/10)
            if sum == i:
                print(i)

验证

for n in range(1,10):f(n)
1
2
3
4
5
6
7
8
9
153
370
371
407
1634
8208
9474
54748
92727
93084
548834
1741725
4210818
9800817
9926315
24678050
24678051
88593477
146511208
472335975
534494836
912985153

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值