Python练习题5(求水仙花数):编写一个程序,求 100~999 之间的所有水仙花数 (如果一个 3 位数等于其各位数字的立方和,则称这个数为水仙花数)

方法一:使用int和str,将int转成字符串拼接后再转成int。

1 for i in range(1,10):
2     for j in range(0,10):
3         for k in range(0,10):
4             num = int(str(i) + str(j) + str(k))
5             if num == i**3 + j**3 + k**3:
6                 print(num)

方法二:使用// 和 % 取百、十、个位数

1 for n in range(100,1000):
2     i = n // 100                    #取百位数
3     j = (n // 10) % 10              #取十位数
4     k = n % 10                      #取个位数
5     if n == i**3 + j**3 + k**3:
6         print(n)

方法三:简单的数学运算

1 for i in range(1,10):
2     for j in range(0,10):
3         for k in range(0,10):
4             num = i*100 + j*10 + k
5             if num == i**3 + j**3 + k**3:
6                 print(num)

猜你喜欢

转载自www.cnblogs.com/felixqiang/p/10229398.html