1.使用单重循环、三重循环两种不同的算法分别编写两个程序,输出所有水仙花数。要求: 在一行上输出;首尾无其他符号;相邻水仙花数以逗号分隔;最后一个数后面无逗号;不能
时间: 2024-11-06 19:18:56 浏览: 13
水仙花数是指一个三位数,其各位数字立方之和等于该数本身。例如,153是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
使用单重循环找到水仙花数的Python示例:
```python
for num in range(100, 1000): # 从100到999
hundreds = int(str(num)[0])
tens = int(str(num)[1])
ones = int(str(num)[2])
if num == hundreds**3 + tens**3 + ones**3:
print(hundreds, ones, tens, end=',') # 输出当前水仙花数,用end参数连接,最后一位不用逗号
```
使用三重循环查找水仙花数的C++示例:
```cpp
#include <iostream>
using namespace std;
void findWaterLily(int num) {
int a = num / 100; // 百位
int b = (num % 100) / 10; // 十位
int c = num % 10; // 个位
if (a*a*a + b*b*b + c*c*c == num) {
cout << a << c << b << (a != num % 100 ? "," : ""); // 输出并判断是否最后一个数
}
}
int main() {
for (int i = 100; i <= 999; ++i)
findWaterLily(i);
return 0;
}
```
阅读全文