Javaはforループを使用してすべての水仙数を出力します

660 ワード

水仙の花の数は1つの3桁(100~999)を指して、その各位の上の数字の3回のべき乗の和はそれ自身に等しいです.
例えば、153=1*1*1+5*5*5+3*3=1+125+27=153
(個位の三次+十位の三次+百位の三次=そのもの)
 
考え方:
(1)まず、範囲は100~999
(2)さらに、数字の個、十、百ビットを取得する
例:153
個位:3=153%10 153取余10=3
10桁:5=(153/10)%10 153を10で割って残りの10を5にする
100ビット:1=(153/10/10)%10 153を100で割って残りの10を1にする
(3)最後に、個、十、百位の立方和を求めて、自身と比較する
//         
		for( int x = 100; x <= 999; x++){
			int ge = x%10;         //    
		    int shi = (x/10)%10;   //    
		    int bai = (x/10%10)%10;  //    
		    if(x == (ge*ge*ge + shi*shi*shi + bai*bai*bai)){
		    	System.out.println(x + "       。");
		    }
		}