5、编写程序实现:输入一个数,判断其是否是求水仙花数。
时间: 2023-04-07 10:00:52 浏览: 156
我可以回答这个问题。求水仙花数是指一个三位数,其各位数字的立方和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^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语言编写程序实现:输入一个数,判断其是否是求水仙花数。
可以回答这个问题。以下是用 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 是水仙花数\n", num);
} else {
printf("%d 不是水仙花数\n", num);
}
return 0;
}
注意:这个程序并不是 ChatGPT 回答的,而是由我编写的。
水仙花数”是一个三位数,其各位数字的立方和等于该数本身。请编写程序实现以下功能:输入一个整数,判断该数是否是水仙花数。java
在Java中,你可以使用条件语句和数学运算来实现判断一个数是否是水仙花数的功能。下面是一个简单的函数示例:
```java
public class NarcissisticNumber {
public static boolean isNarcissistic(int num) {
if (num < 100 || num > 999) {
return false; // 只有三位数才可能是水仙花数
}
int sum = 0;
String numberString = String.valueOf(num); // 转换为字符串便于提取每一位数字
for (char digit : numberString.toCharArray()) {
int digitValue = Character.getNumericValue(digit); // 获取每个字符对应的数值
sum += Math.pow(digitValue, 3); // 立方和的计算
}
return sum == num; // 如果立方和等于原数,则是水仙花数,返回true;否则返回false
}
public static void main(String[] args) {
int input = 153; // 测试输入
System.out.println(isNarcissistic(input) ? "是水仙花数" : "不是水仙花数");
}
}
```
在这个程序中,`isNarcissistic`函数接受一个整数作为参数,首先检查它是否在三位数范围内,然后通过遍历每个位上的数字并计算其立方和,最后比较这个立方和是否与原始数字相等。
阅读全文