编写一个程序判断一个数是不是水仙花数
时间: 2023-04-08 15:04:55 浏览: 194
好的,这个问题我可以回答。水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如,153就是一个水仙花数,因为1的立方加上5的立方加上3的立方等于153。以下是一个判断一个数是否为水仙花数的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, "不是水仙花数")
相关问题
请你编写一个程序判断一个数是不是水仙花数
好的,我可以回答这个问题。判断一个数是否为水仙花数,需要将这个数的每一位数的立方相加,如果结果等于这个数本身,那么这个数就是水仙花数。以下是一个简单的 C 语言程序实现:
#include <stdio.h>
int main() {
int num, originalNum, remainder, result = 0;
printf("请输入一个整数:");
scanf("%d", &num);
originalNum = num;
while (originalNum != 0) {
remainder = originalNum % 10;
result += remainder * remainder * remainder;
originalNum /= 10;
}
if (result == num)
printf("%d 是水仙花数", num);
else
printf("%d 不是水仙花数", num);
return 0;
}
编写一个程序,判断从键盘输入的数是不是水仙花数
水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如,153是一个水仙花数,因为1³+5³+3³=153。
以下是判断一个数是否为水仙花数的程序:
```
#include <stdio.h>
int main()
{
int num, digit1, digit2, digit3;
printf("请输入一个三位数:");
scanf("%d", &num);
digit1 = num / 100; // 取百位数字
digit2 = num / 10 % 10; // 取十位数字
digit3 = num % 10; // 取个位数字
if (num == digit1*digit1*digit1 + digit2*digit2*digit2 + digit3*digit3*digit3)
{
printf("%d是水仙花数。\n", num);
}
else
{
printf("%d不是水仙花数。\n", num);
}
return 0;
}
```
程序首先从键盘读入一个三位数,然后分别取出它的百位、十位和个位数字。接着,程序计算这三个数字的立方和,如果等于原来的数,就说明它是水仙花数,否则不是。最后,程序输出判断结果。
阅读全文