水仙花数输入一个3位数判断是不是水仙花数(三个数位上数字的立方和等于本身)。
时间: 2023-05-23 18:01:22 浏览: 82
以下是可以用 Python 语言实现的代码:
num = int(input("请输入一个三位数:"))
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** 3
temp //= 10
if num == sum:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
相关问题
输入一个3位数判断是不是水仙花数(三个数位上数字的立方和等于本身)
非常好的问题!以下是判断一个3位数是否为水仙花数的代码:
num = int(input("请输入一个3位数:"))
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** 3
temp //= 10
if num == sum:
print(num, "是水仙花数")
else:
print(num, "不是水仙花数")
希望这个代码能够帮到你!
编写程序 输入一个3位数,判断是否是一个“水仙花数”。水仙花数是指3位数的各位数字的立方和等于这个3位数本身
水仙花数(Narcissistic Number)指的是一个n位正整数,其每个位上的数字的n次幂之和等于该数自身。对于3位数的情况,我们只需要检查百位、十位和个位三个数字分别的三次方之和是否等于原来的数。
以下是一个简单的C程序示例,用于输入一个三位数并检查它是否为水仙花数:
```c
#include <stdio.h>
int main() {
int num, digit1, digit2, digit3, sum = 0;
printf("请输入一个3位数: ");
scanf("%d", &num);
// 检查是否为3位数
if (num < 100 || num > 999) {
printf("请输入一个3位数\n");
return 1;
}
// 提取每位数字
digit1 = num / 100; // 百位
digit2 = (num % 100) / 10; // 十位
digit3 = num % 10; // 个位
// 计算立方和
sum = digit1 * digit1 * digit1 + digit2 * digit2 * digit2 + digit3 * digit3 * digit3;
// 判断是否为水仙花数
if (sum == num) {
printf("%d 是一个水仙花数.\n", num);
} else {
printf("%d 不是水仙花数.\n", num);
}
return 0;
}
```
在这个程序中,首先读入一个整数,然后计算它的立方和并与原始数值进行比较。如果相等,则它是水仙花数,否则不是。
阅读全文