编程输出所有水仙花数。(水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。例如:1**3 + 5**3+ 3**3 = 153) 输出格式要求:按从小到大输出,每行一个数。 输出样例: 153 (注:运行时的输出) 370 ...
时间: 2024-03-12 10:44:28 浏览: 24
好的,以下是Python程序代码:
```python
# 循环遍历所有3位数
for num in range(100, 1000):
# 将数字拆分成个位、十位和百位
digit_1 = num // 100
digit_2 = (num // 10) % 10
digit_3 = num % 10
# 判断是否为水仙花数
if num == digit_1 ** 3 + digit_2 ** 3 + digit_3 ** 3:
print(num)
```
你可以将代码复制到Python环境中运行,即可输出所有的水仙花数。
相关问题
编程求出所有水仙花数:水仙花数是指一个 3 位数,它的每个数位上的数字的 3次幂之和等于它本身
水仙花数是一个特殊的整数现象,它由三位数组成,且其各位数字立方和等于该数自身。例如,153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153。为了编写程序找出所有的水仙花数,你可以遍历从100到999之间的每一个数,然后对每个数的百位、十位和个位分别取立方并相加,如果结果等于原数,则该数就是水仙花数。
以下是使用Python编写的一个简单示例:
```python
def find_water_lilies(n):
for num in range(100, 1000): # 遍历三位数范围
first_digit = num // 100 # 百位
second_digit = (num % 100) // 10 # 十位
third_digit = num % 10 # 个位
if first_digit ** 3 + second_digit ** 3 + third_digit ** 3 == num: # 检查是否满足条件
print(num)
# 执行函数查找水仙花数
find_water_lilies()
```
运行这个程序,你会得到所有的水仙花数。
Java编程求出所有水仙花数:水仙花数是指一个 3 位数,它的每个数位上的数字的 3次幂之和等于它本身
在Java编程中,求解水仙花数是一个常见的算法练习题。水仙花数是指一个三位数,其百位、十位和个位数字分别立方后相加等于原数本身。下面是一个简单的Java函数示例,用于找出所有的水仙花数:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
int limit = 1000; // 只考虑三位数
for (int num = 100; num <= limit; num++) {
if (isNarcissistic(num)) {
System.out.println(num);
}
}
}
// 检查是否是水仙花数
private static boolean isNarcissistic(int number) {
int firstDigit = number / 100;
int secondDigit = (number % 100) / 10;
int thirdDigit = number % 10;
// 计算各位立方和并检查是否等于原数
return (firstDigit * firstDigit * firstDigit +
secondDigit * secondDigit * secondDigit +
thirdDigit * thirdDigit * thirdDigit) == number;
}
}
```
在这个程序里,我们遍历从100到999的所有整数,对每个数使用`isNarcissistic`方法判断是否满足水仙花数条件。如果满足,就打印出来。
阅读全文