华师一附中OI组
标题:
C++初级班--水仙花数
[打印本页]
作者:
JASONZHU
时间:
2018-7-18 23:24
标题:
C++初级班--水仙花数
【小科普 水仙花数:
水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身,例如:1*1*1(1^3) + 5*5*5(5^3)+3*3*3(3^3) = 153。】
题目:
小明有道数学题不会做,题目是让他把所有的水仙花数找出来。于是找到热心肠,乐于助人,会计算机的你。你能不能用你所学的知识帮帮小明呢?
作者:
JASONZHU
时间:
2018-7-18 23:26
way 1----------;
#include<iostream>
using namespace std;
int a,b,c,n;
int main()
{
cout<<"======way 1======"<<endl;
for(n=100; n<=999; n++)
{
a=n/100%10;
b=n/10%10;
c=n/1%10;
if(a*a*a+b*b*b+c*c*c==n)
cout<<n<<" ";
}
return 0;
}
复制代码
作者:
JASONZHU
时间:
2018-7-18 23:27
way2----------
#include<iostream>
using namespace std;
int a,b,c,abc;
int main()
{
cout<<endl<<"======way 2======"<<endl;
for(a=1; a<=9; a++)
for(b=0; b<=9; b++)
for(c=0; c<=9; c++)
if(a*a*a+b*b*b+c*c*c==a*100+b*10+c)
cout<<a<<b<<c<<" ";
}
复制代码
作者:
JASONZHU
时间:
2018-7-18 23:28
整合:
#include<iostream>
using namespace std;
int a,b,c,n;
int main()
{
cout<<"======way 1======"<<endl;
for(n=100; n<=999; n++)
{
a=n/100%10;
b=n/10%10;
c=n/1%10;
if(a*a*a+b*b*b+c*c*c==n)
cout<<n<<" ";
}
cout<<endl<<"======way 2======"<<endl;
int abc;
for(a=1; a<=9; a++)
for(b=0; b<=9; b++)
for(c=0; c<=9; c++)
if(a*a*a+b*b*b+c*c*c==a*100+b*10+c)
cout<<a<<b<<c<<" ";
}
复制代码
欢迎光临 华师一附中OI组 (http://hsyit.cn/)
Powered by Discuz! X3.2