水仙花数是各位数字的3次幂之和等于自身的三位数,如153;代码通过分离百位、十位、个位并计算立方和判断是否相等,输出153、371、407。

判断水仙花数的 Python 代码如下:
什么是水仙花数?
水仙花数(Narcissistic number)也叫阿姆斯特朗数,是指一个 3 位数,它的每个位上的数字的 3 次幂之和等于它本身。例如:153 = 13 + 53 + 33 = 1 + 125 + 27 = 153。
判断单个数是否为水仙花数
num = int(input("请输入一个三位数:"))
<h1>确保是三位数</h1><p>if 100 <= num <= 999:</p><div class="aritcle_card flexRow">
<div class="artcardd flexRow">
<a class="aritcle_card_img" href="/ai/762" title="百宝箱"><img
src="https://img.php.cn/upload/ai_manual/000/000/000/175679962759206.png" alt="百宝箱" onerror="this.onerror='';this.src='/static/lhimages/moren/morentu.png'" ></a>
<div class="aritcle_card_info flexColumn">
<a href="/ai/762" title="百宝箱">百宝箱</a>
<p>百宝箱是支付宝推出的一站式AI原生应用开发平台,无需任何代码基础,只需三步即可完成AI应用的创建与发布。</p>
</div>
<a href="/ai/762" title="百宝箱" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span> </a>
</div>
</div><h1>分离百位、十位、个位</h1><pre class='brush:python;toolbar:false;'>hundreds = num // 100
tens = (num // 10) % 10
ones = num % 10
# 计算各位立方和
sum_of_cubes = hundreds**3 + tens**3 + ones**3
# 判断是否相等
if sum_of_cubes == num:
<strong>print(f"{num} 是水仙花数")</strong>
else:
<strong>print(f"{num} 不是水仙花数")</strong>else: print("请输入一个有效的三位数")
找出所有三位水仙花数
print("三位数中的水仙花数有:")
for num in range(100, 1000):
hundreds = num // 100
tens = (num // 10) % 10
ones = num % 10
if hundreds**3 + tens**3 + ones**3 == num:
<strong>print(num)</strong>运行结果会输出:153, 371, 407(注意:实际三位水仙花数为 153、371、407,共三个)。
立即学习“Python免费学习笔记(深入)”;
基本上就这些,代码简单明了,适合初学者理解循环和条件判断的应用。










