求100~999之间的水仙花数

标签:#萌新 #0基础 #简约实现:
先说一下什么是水仙花数,水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身(例如:1^3 + 5^3+ 3^3 = 153)。
代码送上:

for i in range(100,1000): 
#从100到999(1000-1)迭代,即依次取100,101,102...999
    numb_1 = i // 100 
    #每当取一个数,将其地板除以100,得到即是其首位数,如153 // 100 = 1,然后将其值赋值给numb_1
    numb_2 = i % 100
    #同样,每次取得的数除以100取余,得到即是其后两位数字,如153 % 100 = 53,然后将其值赋值给numb_2
    numb_3 = numb_2 // 10
    #依次类推,将后两位数字numb_2地板除以10,得到同样是该数的首位,如53 // 10 = 5,然后将其值赋值给numb_3
    numb_4 = numb_2 % 10
    #后两位数字numb_2除以10取余,得到即是该数的末位数,如53 % 10 = 3,然后将其值赋值给numb_4
    numb = numb_1**3 + numb_3**3 + numb_4**3
    if numb == i:
        print(f'{numb}是水仙花数')
            #综上所述,将上述求得的数,分别求其3次幂之和,与目标数(即从100到999依次取得的数)作比较,若相等,则输出为水仙花数;相反,则迭代下个数进行计算,直到走完整个range迭代流程

你可能感兴趣的:(python)