python判断水仙花数最简单解法(python判断水仙花数调用)

http://www.itjxue.com  2023-03-16 15:31  来源:未知  点击次数: 

python程序的功能是输入一个三位数,判断是否是水仙花数。

#-*-coding:utf-8;-*-

n=int(input('请输入水仙花数'));

i = n / 100;

j = n / 10 % 10;

k = n % 10;

if n == i ** 3 + j ** 3 + k ** 3:print('%d是水仙花数'%n);

else: print('%d不是水仙花数'%n);

python使用函数实现水仙花数?

答: 首先要明白水仙花数的定义,它是指一个三位数,它的每个位上的数字的三次幂之和等于它本身。所以问题就转化为我们如何将三位数的个位、十位和百位都表示出来。然后再遍历100~999的每一个数字去判断其是否为水仙花数。具体代码如下所示。

最终的运行结果如下,水仙花数总共有4个,具体如图片所示。

用python确认一个数是不是水仙花数

水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3+ 3^3 = 153)

给你写个例子:

def check_num_is_shuixianhua(num):

'''判断一个数字是否是水仙花数

水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身。

(例如:1^3 + 5^3+ 3^3 = 153)'''

#水仙花数必须大于3位

if num 100:

return False

#水仙花数只计算整数

if type(num) != int:

return False

tmp = str(num)

len_num = len(tmp)

num_list = []

for i in range(len_num):

num_list.append(int(tmp[i]))

sum_num = 0

for i in num_list:

sum_num += (i ** len_num)

if sum_num == num:

return True

else:

return False

python输入一个数,判断是不是水仙花数

num = int(input("请输入一个三位数子:"))

gw = num%10 #取个位数

sw = num%100//10#取百位数

bw = num//100 #取百位数

total = gw ** 3 + sw ** 3 + bw ** 3

#print(total)

if num == total:

print("该数字是一个水仙花数")

else:

print("不是水仙花数")

(责任编辑:IT教学网)

更多