水仙花案例与嵌套循环案例

需求实现 

获取3位数的水仙花数,效果如图所示:


编写步骤: 

1. 使用for循环获取100-999中的每个数字 

2. 在for循环中获取这个数字的百位 

3. 在for循环中获取这个数字的十位

4. 在for循环中获取这个数字的个位 

5. 如果个位的立方 + 十位的立方 + 百位的立方等于这个数本身,则打印这个水仙花数字

参考答案:

public static void main(String[] args){
      //1.使用for循环获取100-999中的每个数字
      for(int i=100;i<1000;i++){
            //2.在for循环中获取这个数字的百位
            int bai=i/100;
            //3.在for循环中获取这个数字的十位
            int shi=i/10%10;
            //4.在for循环中获取这个数字的个位
            int ge=i%10;
            //5.如果各位的立方+十位的立方+百位的立方等于这个if数本身,则打印这个水仙花数
            if(ge*ge*ge+shi*shi*shi+bai*bai*bai==i){
               System.out.println(i);
)}}


需求实现 

打印『X』对称图形,效果如图所示:


开发提示: 

1、平面图形涉及到有行有列,考虑到嵌套for循环 

2、一个外循环控制行,一个内循环控制输出内容 

3、在内循环中,根据变量的变化规律,判断输出"O"还是"*"

参考答案:

public static void main(String[] args){
       //定义for循环,初始化变量x=1,如果x<=7进入循环,步进表达式x++
       for(int x=1;x<=7;x++){
           //for循环内部,在嵌套定义一套for循环,初始化变量y=1,如果y<=7进入循环,步进表达式y++
           for(int y=1;y<=7;y++){
               //在内循环内部,判断x==y 或者 x+y==8,则打印"O",否则打印"*"
               if(x==y || x+y==8){
                  System.out.print("O");
               }else{
                   System.out.print("*");
                }
             }
              //换行
             System.out.println();
}
}

猜你喜欢

转载自blog.csdn.net/xiaodan_0916/article/details/80809389