输入一个三位数判断是不是三个数位上数字的立方和等于本身
时间: 2023-05-21 19:04:08 浏览: 64
好的,让我来帮您解答这个问题。首先,我们可以将这个三位数拆分成三个数字,然后判断它们的立方和是否等于这个数本身。具体的代码实现如下:
```python
num = int(input("请输入一个三位数:"))
a = num // 100
b = num // 10 % 10
c = num % 10
if a**3 + b**3 + c**3 == num:
print("是三个数位上数字的立方和等于本身的数")
else:
print("不是三个数位上数字的立方和等于本身的数")
```
这段代码中,我们首先通过 `//` 和 `%` 运算符将输入的三位数拆分成三个数字,然后计算它们的立方和。如果立方和等于这个数本身,就输出“是三个数位上数字的立方和等于本身的数”,否则输出“不是三个数位上数字的立方和等于本身的数”。希望这个回答能够帮到您!
相关问题
输入一个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, "不是水仙花数")
希望这个代码能够帮到你!
C语言 调用函数fun判断一个三位数是否为数字立方和等于该数本身
可以先编写一个判断一个数是否是三位数的函数,然后在此基础上编写判断数字立方和的函数,最后再将两个函数合并为一个完成整个功能。
下面是代码示例:
```c
#include <stdio.h>
#include <math.h>
int isThreeDigits(int num) { // 判断是否为三位数
return num >= 100 && num <= 999;
}
int isCubeSum(int num) { // 判断是否为数字立方和
int temp = num;
int sum = 0;
while (temp > 0) {
sum += pow(temp % 10, 3);
temp /= 10;
}
return sum == num;
}
int fun(int num) { // 判断一个三位数是否为数字立方和等于该数本身
if (!isThreeDigits(num)) { // 不是三位数
return 0;
}
return isCubeSum(num);
}
int main() {
int num;
printf("请输入一个三位数:");
scanf("%d", &num);
if (fun(num)) {
printf("%d是数字立方和等于该数本身的数\n", num);
} else {
printf("%d不是数字立方和等于该数本身的数\n", num);
}
return 0;
}
```
输入一个三位数后,程序会调用`fun`函数进行判断。如果是数字立方和,输出提示信息;否则输出另外一条提示信息。