水仙花数是指一个三位数,其各个位数的立方和等于该数本身。以下是用不同编程语言编写的求水仙花数的程序:
Python
```python
def is_narcissistic_number(n):
a = n // 100
b = (n % 100) // 10
c = n % 10
return a3 + b3 + c3 == n
for i in range(100, 1000):
if is_narcissistic_number(i):
print(f"水仙花数: {i}")
```
Java
```java
import java.util.*;
public class ShuiXianHua {
public static void main(String[] args) {
System.out.println("判断水仙花数");
Scanner reader = new Scanner(System.in);
System.out.println("请输入一个三位数:");
int num = reader.nextInt();
if (isNarcissisticNumber(num)) {
System.out.println(num + "是水仙花数");
} else {
System.out.println(num + "不是水仙花数");
}
}
public static boolean isNarcissisticNumber(int num) {
int a = num / 100;
int b = (num % 100) / 10;
int c = num % 10;
return Math.pow(a, 3) + Math.pow(b, 3) + Math.pow(c, 3) == num;
}
}
```
C
```c
include include int isNarcissisticNumber(int num) { int a = num / 100; int b = (num % 100) / 10; int c = num % 10; return pow(a, 3) + pow(b, 3) + pow(c, 3) == num; } int main() { int num; printf("请输入一个三位数:"); scanf("%d", &num); if (isNarcissisticNumber(num)) { printf("%d是水仙花数\n", num); } else { printf("%d不是水仙花数\n", num); } return 0; } ``` C++ ```cpp include include bool isNarcissisticNumber(int num) { int a = num / 100; int b = (num % 100) / 10; int c = num % 10; return pow(a, 3) + pow(b, 3) + pow(c, 3) == num; } int main() { int num; std::cout << "请输入一个三位数:"; std::cin >> num; if (isNarcissisticNumber(num)) { std::cout << num << "是水仙花数" << std::endl; } else { std::cout << num << "不是水仙花数" << std::endl; } return 0; } ``` 这些程序都可以用来判断一个三位数是否是水仙花数。你可以选择任意一种编程语言来实现。