/** * 题目:打印出所有的 "水仙花数 ", * 所谓 "水仙花数 "是指一个三位数, * 其各位数字立方和等于该数本身。 * 例如:153是一个 "水仙花数 ",因为153=1的三次方+5的三次方+3的三次方。 */ public class DafNums { public static void main(String[] args) { // for循环一次列出所有三位数 for (int i = 100; i < 1000; i++) { // 定义一个变量存储个位数字 int ge = i%10; // 定义一个变量存储十位数字 int shi = i%100/10; // 定义一个变量存储百位数字 int bai = i/100; // 用Math.pow()计算个位数的立方 int geCube = (int)Math.pow(ge,3); // 计算十位数的立方 int shiCube = (int)Math.pow(shi,3); // 计算百位数的立方 int baiCube = (int)Math.pow(bai,3); // 用if语句判断各位数的立方之和是否和该数字相对 if(i==geCube+shiCube+baiCube){ // 如果相等,输出该数字 System.out.println(i); } } } }
结果: