自幂数,这道题怎么做啊,求解答!!!
Description有一种神奇的数,叫做自幂数”。自幂数是指一个n位数,它的每个位上的数字的n次幂之和等于它本身。153就是其中一个自幂数,因为153是3位数,且1^3...
Description
有一种神奇的数,叫做自幂数”。自幂数是指一个n位数,它的每个位上的数字的n次幂之和等于它本身。153就是其中一个自幂数,因为153是3位数,且1^3+5^3+3^3=153。现在给你n,求出所有n位的数中的自幂数。
Input
输入n ( 3<= n <= 6)
Output
按照升序依次输出含n位的自幂数 展开
有一种神奇的数,叫做自幂数”。自幂数是指一个n位数,它的每个位上的数字的n次幂之和等于它本身。153就是其中一个自幂数,因为153是3位数,且1^3+5^3+3^3=153。现在给你n,求出所有n位的数中的自幂数。
Input
输入n ( 3<= n <= 6)
Output
按照升序依次输出含n位的自幂数 展开
1个回答
展开全部
自幂数是指一个 n 位数,它的每个位上的数字的 n 次幂之和等于它本身。
n为1时,自幂数称为独身数。显然,0,1,2,3,4,5,6,7,8,9都是自幂数。
n为2时,没有自幂数。
n为3时,自幂数称为水仙花数,有4个:153,370,371,407;
n为4时,自幂数称为四叶玫瑰数,共有3个:1634,8208,9474;
n为5时,自幂数称为五角星数,共有3个:54748,92727,93084;
n为6时,自幂数称为六合数, 只有1个:548834;
n为7时,自幂数称为北斗七星数, 共有4个:1741725,4210818,9800817,9926315;
n为8时,自幂数称为八仙数, 共有3个:24678050,24678051,88593477;
n为9时,自幂数称为九九重阳数,共有4个:146511208,472335975,534494836,912985153;
n为10时,自幂数称为十全十美数,只有1个:4679307774。
实现代码 编辑本段
C++参考代码
#include<iostream>
usingnamespacestd;
intmain()
{
inta,b,c;//分别为百位、十位、个位数
for(a=1;a<10;a++)
for(b=0;b<10;b++)
for(c=0;c<10;c++)
{
if(a*100+b*10+c==a*a*a+b*b*b+c*c*c)
cout<<a*100+b*10+c<<"="<<a<<"^3+"<<b<<"^3+"<<c<<"^3"<<endl;
}
return0;
}
n为1时,自幂数称为独身数。显然,0,1,2,3,4,5,6,7,8,9都是自幂数。
n为2时,没有自幂数。
n为3时,自幂数称为水仙花数,有4个:153,370,371,407;
n为4时,自幂数称为四叶玫瑰数,共有3个:1634,8208,9474;
n为5时,自幂数称为五角星数,共有3个:54748,92727,93084;
n为6时,自幂数称为六合数, 只有1个:548834;
n为7时,自幂数称为北斗七星数, 共有4个:1741725,4210818,9800817,9926315;
n为8时,自幂数称为八仙数, 共有3个:24678050,24678051,88593477;
n为9时,自幂数称为九九重阳数,共有4个:146511208,472335975,534494836,912985153;
n为10时,自幂数称为十全十美数,只有1个:4679307774。
实现代码 编辑本段
C++参考代码
#include<iostream>
usingnamespacestd;
intmain()
{
inta,b,c;//分别为百位、十位、个位数
for(a=1;a<10;a++)
for(b=0;b<10;b++)
for(c=0;c<10;c++)
{
if(a*100+b*10+c==a*a*a+b*b*b+c*c*c)
cout<<a*100+b*10+c<<"="<<a<<"^3+"<<b<<"^3+"<<c<<"^3"<<endl;
}
return0;
}
追问
兄弟,这段我也百度到了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询