关于水仙花数题目的一种扩展 C++

来源:百度知道 编辑:UC知道 时间:2024/06/06 01:41:24
先求出1-1000以内的水仙花数(153,370,371,407),但只能输出各个位数相加之和最大的那个数,也就是407和371,请问怎么编写?

#include <iostream>

using namespace std;

main()
{
int i=100,q,w,e;

int max1=0,max2=0

for(i,i<999,i++)
{
q=i/100;
w=(i-q*100)/10;
e=(i-q*100-w*10);
if(i==q^3+w^3+e^3)

if((q+w+e)>=max)
{
max1=q+w+e;
cout<<i;
}

}

}

main()
{int a,b,c,d,e,i=0,j,max;
int m[10];
int k[10];
for(a=100;a<1000;a++)/*找出所有的水仙花数*/
{b=a/100;
c=a%100;
d=c/10;
e=a%10;
if(a==b*b*b+d*d*d+e*e*e)
{
m[i]=a;
printf("%4d",m[i]);
i++;
}
}
printf("\n");
for(j=0;j<i;j++)/*水仙花数各位相加,找出和最大的数*/
{a=m[j];
b=a/100;
c=a%100;
d=c/10;
e=a%10;
k[j]=b+d+e;
}
max=k[0];
for(j=0;j<i;j++)
{if(k[j]>=max)
max=k[j];
}
for(j=0;j<i;j++)/*找出各位相加同样大的水仙花数,