阅读量:1
水仙花数(Narcissistic number)是指一个 n 位数(n≥3),其各个位上数字的 n 次幂之和等于它本身。例如,153 是一个水仙花数,因为 1^3 + 5^3 + 3^3 = 153。
下面是一个Python程序,用来输出所有的三位数的水仙花数:
for num in range(100, 1000): # 将数字转换为字符串,以便进行迭代 num_str = str(num) # 取出个位、十位和百位上的数字 digit1 = int(num_str[0]) digit2 = int(num_str[1]) digit3 = int(num_str[2]) # 计算数字的立方和 sum_of_cubes = digit1 ** 3 + digit2 ** 3 + digit3 ** 3 # 如果立方和等于原数字,则输出该数字为水仙花数 if sum_of_cubes == num: print(num)
运行以上代码,将输出所有的三位数的水仙花数:153, 370, 371, 407。