编程输出所有的水仙花数
时间: 2024-11-30 15:17:23 浏览: 11
水仙花数是指一个三位数,其各位数字立方和等于该数本身。例如,153就是一个水仙花数,因为1^3 + 5^3 + 3^3 = 153。
要编写C程序输出所有水仙花数,你可以使用循环结构遍历所有可能的三位数,并检查每个数是否满足条件。以下是一个简单的C程序示例:
```c
#include <stdio.h>
int main() {
int i, j, k;
for (i = 100; i <= 999; i++) { // 遍历100到999之间的整数
int sum = 0; // 初始化和为0
int num = i; // 将当前数赋值给num
// 分解每位数字并计算它们的立方和
while (num != 0) {
k = num % 10;
sum += k * k * k;
num /= 10;
}
// 检查是否为水仙花数
if (sum == i) {
printf("%d is a Narcissistic number.\n", i);
}
}
return 0;
}
```
这个程序会打印出所有从100到999范围内的水仙花数。
相关问题
使用c++编程输出所有水仙花数
好的,这是一个技术问题,我可以回答。以下是使用 C++ 编程输出所有水仙花数的代码:
```
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int num, temp, sum;
for(num = 100; num < 1000; num++)
{
temp = num;
sum = 0;
while(temp > 0)
{
int remainder = temp % 10;
sum += pow(remainder, 3);
temp /= 10;
}
if(sum == num)
{
cout << num << endl;
}
}
return 0;
}
```
执行这个程序,会输出所有 3 位水仙花数。
编程输出所有水仙花数。(水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。例如:1**3 + 5**3+ 3**3 = 153) 输出格式要求:按从小到大输出,每行一个数。 输出样例: 153 (注:运行时的输出) 370 ...
好的,以下是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环境中运行,即可输出所有的水仙花数。
阅读全文