13.for循环练习之打印水仙花数

for循环实现在控制台打印水仙花数

package com.itheima_04;
/*
 * 在控制台输出所有的“水仙花数”
 * 
 * 水仙花数?
 *  所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。
 *  举例:153就是一个水仙花数。
 *  153 = 1*1*1 + 5*5*5 + 3*3*3
 *
 *分析:
 *  A:三位数其实是告诉了我们水仙花数的范围,用for循环实现
 *  B:获取一个三位数的个位,十位,百位,
 *      举例:比如说153
 *      个位:153 % 10
 *      十位:153 / 10 % 10
 *      百位:153 / 10 / 10 % 10
 *      ...
 *  C:拿每个数据的每个位上的数据立方和相加,然后和该数据本身进行比较
 *      如果相等,就说明该数据是水仙花数,就打印在控制台
 */
public class ForTest4 {
    public static void main(String[] args) {
        //三位数其实是告诉了我们水仙花数的范围,用for循环实现
        for(int x = 100; x <= 999; x++) {
            //获取一个三位数的个位,十位,百位,
            int ge = x % 10;
            int shi = x / 10 % 10;
            int bai = x / 10 /10 % 10;
            
            //拿每个数据的每个位上的数据立方和相加,然后和该数据本身进行比较
            if((ge*ge*ge+shi*shi*shi+bai*bai*bai) == x) {
                //如果相等,就说明该数据是水仙花数,就打印在控制台
                System.out.println(x);
            }
        }
    }
}

你可能感兴趣的:(13.for循环练习之打印水仙花数)