编写程序输出所有的水仙花数
时间: 2024-04-25 17:06:33 浏览: 93
水仙花数指一个三位数,其各位数字的立方和等于该数本身。例如153就是一个水仙花数,因为1³+5³+3³=153。
以下是Python程序实现:
```python
for i in range(100, 1000):
num = str(i)
if int(num[0])**3 + int(num[1])**3 + int(num[2])**3 == i:
print(i)
```
输出结果为:
```
153
370
371
407
```
相关问题
编写程序输出所有水仙花数
水仙花数是指一个三位数,其各位数字立方之和等于该数本身。例如,153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153。编写一个C语言程序来输出所有的水仙花数可以采用以下步骤:
```c
#include <stdio.h>
#include <stdbool.h>
bool is_armstrong(int num) {
int sum = 0, original_num, remainder;
original_num = num;
while (num != 0) {
remainder = num % 10;
sum += remainder * remainder * remainder; // 计算每一位的立方
num /= 10;
}
return sum == original_num; // 比较原数和计算结果是否相等
}
void print_armstrong_numbers(int start, int end) {
for (int i = start; i <= end; i++) {
if (is_armstrong(i)) {
printf("%d ", i);
}
}
}
int main() {
int start = 100, end = 999; // 确定查找范围
printf("水仙花数在%d到%d之间的有:\n", start, end);
print_armstrong_numbers(start, end);
return 0;
}
```
这个程序首先定义了一个函数`is_armstrong`用于判断一个数是否为水仙花数,然后在`print_armstrong_numbers`函数里遍历指定范围内寻找,并打印出来。
java编写程序输出所有水仙花数。水仙花数: abc = 输出: 所有的水仙花数如下所示: 153、370、371、407
水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如,1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153,所以153就是一个水仙花数。以下是使用Java编写的简单程序,用于找出并输出所有的水仙花数:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
for (int i = 100; i <= 999; i++) {
if (isNarcissistic(i)) {
System.out.println(i);
}
}
}
// 判断是否为水仙花数的函数
private static boolean isNarcissistic(int number) {
int sum = 0;
String numStr = Integer.toString(number);
for (char digit : numStr.toCharArray()) {
sum += Character.getNumericValue(digit) * Character.getNumericValue(digit) * Character.getNumericValue(digit);
}
return sum == number;
}
}
```
运行这个程序会输出:153, 370, 371, 407。
阅读全文