从键盘输入一个3位的整数,并判断是否为水仙花数
时间: 2024-10-08 12:27:08 浏览: 44
"水仙花数"是一种特殊的三位数,它的各位数字立方和等于该数本身。例如,153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153。以下是判断一个三位数是否为水仙花数的一种常见算法:
1. 获取用户的输入,确保它是一个三位数。你可以使用类似这样的代码:
```python
num = int(input("请输入一个三位数:"))
```
2. 判断输入的数是否为三位数。如果不是,提示用户输入正确的数值:
```python
if num < 100 or num > 999:
print("请输入一个三位数")
num = int(input())
```
3. 将这个三位数拆分成个位、十位和百位的数字。你可以通过取模运算做到这一点:
```python
digit1 = num // 100 # 百位数字
digit2 = (num // 10) % 10 # 十位数字
digit3 = num % 10 # 个位数字
```
4. 计算每个位置上的数字的立方和,然后与原数做对比:
```python
sum_of_cubes = digit1**3 + digit2**3 + digit3**3
if sum_of_cubes == num:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
```
相关问题
编写程序,由键盘输入一个三位整数,判断它是不是水仙花数
水仙花数是指一个三位数,它的各位数字的立方和等于它本身。例如:153 = 1^3 + 5^3 + 3^3。
以下是Python代码实现:
num = int(input("请输入一个三位整数:"))
# 分离出百位、十位、个位
hundreds = num // 100
tens = (num % 100) // 10
ones = num % 10
# 判断是否为水仙花数
if num == hundreds ** 3 + tens ** 3 + ones ** 3:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
从键盘输入一个三位整数,判断该数是不是水仙花数
好的,水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。那么,以下是判断一个三位数是否为水仙花数的代码:
```python
num = int(input("请输入一个三位整数:"))
# 分离出百位、十位、个位数字
a = num // 100
b = (num % 100) // 10
c = num % 10
# 判断是否为水仙花数
if a**3 + b**3 + c**3 == num:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
```
需要注意的是,这个代码中用到了整除运算符`//`和取模运算符`%`,它们可以帮助我们分离出三位数的百位、十位、个位数字。
阅读全文