输入三位数实现水仙花数
时间: 2023-11-20 18:17:17 浏览: 24
水仙花数是指一个三位数,它的每个位上的数字的立方之和等于它本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。以下是实现水仙花数的代码示例:
```python
for num in range(100, 1000):
# 将数字拆分为各个位数
digit1 = num // 100
digit2 = (num % 100) // 10
digit3 = num % 10
# 判断是否为水仙花数
if digit1**3 + digit2**3 + digit3**3 == num:
print(num)
```
输出结果为:
```
153
370
371
407
```
相关问题
c语言输入3位数判断水仙花
判断一个三位数是否为水仙花数,需要将这个三位数拆分成个位、十位和百位,然后判断其是否满足以下条件:各个位上的数字的立方和等于该数本身。
下面是一个简单的C语言程序实现:
```c
#include <stdio.h>
int main()
{
int num, digit, sum = 0;
printf("请输入一个三位数:");
scanf("%d", &num);
digit = num % 10; // 取个位数
sum += digit * digit * digit;
num /= 10;
digit = num % 10; // 取十位数
sum += digit * digit * digit;
num /= 10;
digit = num % 10; // 取百位数
sum += digit * digit * digit;
if (sum == num) // 判断是否为水仙花数
{
printf("%d 是水仙花数。\n", num);
}
else
{
printf("%d 不是水仙花数。\n", num);
}
return 0;
}
```
在程序中,首先从用户输入中获取一个三位数,然后分别取出个位、十位和百位上的数字,计算它们的立方和,最后判断是否等于原来的三位数。如果等于,则输出“是水仙花数”,否则输出“不是水仙花数”。
三位数是否为水仙花数python
三位数是否为水仙花数需要判断该数的各位数字的立方和是否等于该数本身。在Python中,可以通过如下代码实现:
num = int(input("请输入一个三位数:"))
a = num // 100 # 获取百位数
b = num // 10 % 10 # 获取十位数
c = num % 10 # 获取个位数
if num == a**3 + b**3 + c**3: # 判断是否为水仙花数
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
该代码首先获取用户输入的三位数,然后通过整除和取模运算求出该数的百位、十位和个位数字,最后判断这三个数字的立方和是否等于该数本身。如果是,则输出该数为水仙花数,否则输出该数不是水仙花数。
需要注意的是,Python中的判断相等运算符是“==”,而不是单个的“=”。此外,如果需要判断多个条件,可以使用“and”、“or”等逻辑运算符进行组合。