实战训练1—水仙花数
问题描述:
水仙花数(Narcissistic number),又称为自恋数、自幂数、阿姆斯特朗数,是指一个n位数,它的每个位上的数字的n次幂之和等于它本身。对于三位数来说,如果一个三位数等于它各个数位上的数字的立方和,那么这个数就是“水仙花数。例如,153是一个三位数,且1^3 + 5^3 + 3^3 = 153,所以153是一个水仙花数。试编一程序,求出所有3位数中的“水仙花数”。
输入格式:
无
输出格式:
一行,所有的水仙花数,并用空格隔开。
输入输出样例:
| 输入样例 |
输出样例 |
| 无 |
153 370 371 407 |
问题分析:
根据题意,由于要找的是三位数,所以求解范围是从100到999;对于该范围内的每一个数,需要将该数的百位、十位和个位数字依次分解出来,并计算立方和,将分解得到的每一位数字分别求立方,并将这些立方值相加;将计算得到的立方和与原数进行比较,如果相等,则该数是水仙花数并输出;否则不是。具体程序代码如下:
#include<bits/stdc++.h>
using namespace std;
int main(){
for(int i = 100;i<=999;

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



