java代码实现求取四叶草数
四叶草数是指一个 4 位数,它的每个位上的数字的 4次幂之和等于它本身。
方法一:
package siyecaonumber;public class SiYeCao {public static void main(String[] args) {for(int i =1000;i<10000;i++){ //四叶草数是三位数,故i取值1000~9999int a = i/1000; //求取千位数int b = i%1000/100; //求取百位数int c = i%100/10; //求取十位数int d = i%10; //求取十位数int temp = a*a*a*a+b*b*b*b+c*c*c*c+d*d*d*d;/*如果temp==i,则该数是四叶草数.*/if(temp==i){System.out.println(i); //打印四叶草数}}}
}
//结果:
1634
8208
9474
方法二:
package siyecaonumber;public class SiYeCao {public static void main(String[] args) {int i =1000;while (i<10000){if (i==(Math.pow((int)(i/1000),4)+Math.pow((int)(i%1000/100),4)+Math.pow((int)(i%100/10),4)+Math.pow(i%10,4))){System.out.println(i); //打印四叶草数}i++;}}
}
//结果:
1634
8208
9474