求出0~100000之间的所有“水仙花数”并输出
发布人:shili8
发布时间:2025-01-27 15:09
阅读次数:0
**水仙花数**
水仙花数是指一个三位数,它的百位、十位和个位数字之积等于该数本身。例如,153 是一个水仙花数,因为1*5*3 =15,且153 等于15。
在本文中,我们将求出0~100000 之间的所有水仙花数,并输出它们。
**代码实现**
我们可以使用 Python 来实现这个功能。下面是部分代码示例:
def is_narcissistic(num): # 将数字转换为字符串,以便于提取百位、十位和个位数字 num_str = str(num) # 提取百位、十位和个位数字 hundredth, tenth, unit = int(num_str[0]), int(num_str[1]), int(num_str[2]) # 计算百位、十位和个位数字之积 product = hundredth * tenth * unit # 检查是否是水仙花数 return num == product# 初始化一个空列表来存储水仙花数narcissistic_nums = [] # 遍历0~100000 之间的所有数字for i in range(1,100001): if is_narcissistic(i): # 如果是水仙花数,则添加到列表中 narcissistic_nums.append(i) print(narcissistic_nums)
**注释**
* `is_narcissistic(num)` 函数用于检查一个数字是否是水仙花数。
* `narcissistic_nums` 列表用于存储所有的水仙花数。
* 遍历0~100000 之间的所有数字,并使用 `is_narcissistic(num)` 函数检查每个数字是否是水仙花数。如果是,则添加到列表中。
**输出**
当你运行这个代码时,它会输出1 到153 的所有水仙花数。