编写程序,输出所有的“水仙花数”。水仙花数指一个3位数,其各位数字的立方和恰好等于该数本身代码
时间: 2024-05-04 10:15:37 浏览: 91
以下是输出所有的水仙花数的 Python 代码:
```python
for num in range(100, 1000):
digit1 = num // 100
digit2 = (num // 10) % 10
digit3 = num % 10
if num == digit1 ** 3 + digit2 ** 3 + digit3 ** 3:
print(num)
```
这段代码会输出所有的水仙花数:153、370、371、407。
相关问题
输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数字本身。 例如,153是一个水仙花数,因为 153=1 3 +5 3 +3 3 用Java编写
水仙花数是指一个三位数,它的每个位上的数字分别自乘三次并相加,结果恰好等于原数。我们可以使用循环和条件判断来找出所有这样的数。以下是一个简单的Java程序示例:
```java
public class NarcissisticNumber {
public static void main(String[] args) {
for (int num = 100; num <= 999; num++) {
int digits[] = new int[3];
int sum = 0;
String strNum = Integer.toString(num);
// 分割每一位数字
for (int i = 0; i < strNum.length(); i++) {
digits[i] = Character.getNumericValue(strNum.charAt(i));
}
// 计算每位数字立方之和
for (int digit : digits) {
sum += Math.pow(digit, 3);
}
// 检查是否是水仙花数
if (sum == num) {
System.out.println(num); // 打印出找到的水仙花数
}
}
}
}
```
这个程序会遍历从100到999的所有整数,检查它们是否满足水仙花数的条件,并在符合条件的情况下打印出来。
输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身。例如,153 是水仙花数,因为 153=1+5+3°。
"水仙花数"是指一个三位数,其百位、十位和个位数字分别立方后相加得到的数值恰好等于原数。比如153就是一个水仙花数,因为\(1^3 + 5^3 + 3^3 = 1 + 125 + 27 = 153\)。
要列出所有水仙花数,可以编写一段程序遍历从100到999的所有整数,对每一位进行立方并求和,如果结果等于原数,则将其记录下来。以下是简单的Python示例:
```python
def find_water_lily_numbers(start, end):
water_lilies = []
for num in range(start, end + 1):
digits = [int(digit) for digit in str(num)]
if sum([digit ** 3 for digit in digits]) == num:
water_lilies.append(num)
return water_lilies
water_lily_numbers_list = find_water_lily_numbers(100, 999)
阅读全文