水仙花数
1.什么是水仙花数?
①水仙花数是一个是三位数
②水仙花数的个位、十位、百位的立方和等于原数
例如:
123
1³+2³+3³=36≠123
则三位数123不是水仙花数
371
3³+7³+1³=371
则三位数371是水仙花数
2.用java程序求水仙花数
分析:
①三位数求个位:三位数除以10并进行取余便得到个位数例如:
371%10=1。。。。。。。。。。。。1就是个位数
②三位数求百位:三位数除以100:
371/100=3。。。。。。。。。。3就是个位数
③三位数求十位:三位数先除以10,然后对商进行取余
371/10=37
37%10=7。。。。。。。。7就是十位数
拓展:任意位上的指定数字怎么求??
思路:
先使用整除操作将数字移动到个位,然后对其进行取余操作得到该数字:
123456789 得到5
123456789/10000=12345。。。。。。将5移动到个位数
12345%10=5。。。。。。得到5
java程序
输出所以的水仙花数
public class Narcissistic {
public static void main(String[] args) {
// 遍历所有的三位数,从 100到999
for (int i=100;i<=999;i++){
// 判断是否是水仙花数
int ge=i%10;
int shi=i/10%10;
int bai=i/10/10%10;
if (ge*ge*ge+shi*shi*shi+bai*bai*bai==i){
System.out.println(i);
}
}
}
}