java-003 把打印规则图形玩起来(之粉碎老师装x)

题目:
在这里插入图片描述
第一个图形function:

 public static void numberOne(int lineNum,char ch){
        //判断奇数偶数
        if(lineNum%2==0){
            lineNum+=1;//变成奇数
        }
        for(int i=1;i<=lineNum/2+1;i++){
            for(int j=1;j<=lineNum;j++){
                    if(i==lineNum/2+1){
                        System.out.print(ch+"\t");
                    }else{
                        if(j==1||j==lineNum||j==i||j==lineNum-i+1){
                             System.out.print(ch+"\t");
                        }else{
                             System.out.print("\t");
                        }
                    }
            }
                System.out.println();
        }
    }

效果:
在这里插入图片描述
第二个图形function:

  public static void numberTwo(int lineNum,char ch){
         //判断奇数偶数
        if(lineNum%2==0){
            lineNum+=1;//变成奇数
        }
        for(int i=1;i<=lineNum;i++){
            for(int j=1;j<=lineNum;j++){
                if(i==1||i==lineNum){
                    System.out.print(ch+"\t");
                }else{
                    if(i<lineNum/2+1){
                        if(j==1||j==lineNum){
                            System.out.print(ch+"\t");
                        }else{
                            System.out.print("\t");
                        }
                    }else{
                         if(j==1||j==lineNum||j==lineNum-i+1||j==i){
                            System.out.print(ch+"\t");
                        }else{
                            System.out.print("\t");
                        }

                    }
                }
            }
            System.out.println();
        }
    }

效果:
在这里插入图片描述
第三个图形function:

  public static void numberThree(int lineNum,char ch){
           //判断奇数偶数
        if(lineNum%2==0){
            lineNum+=1;//变成奇数
        }
        for(int i=1;i<=lineNum;i++){
            for(int j=1;j<=lineNum;j++){
                if(i==1||i==lineNum){
                    System.out.print(ch+"\t");
                }else{
                             if(i<=lineNum/2+1){
                      if(j==1||j==lineNum||j==i){
                         System.out.print(ch+"\t");
                      }else{
                        System.out.print("\t");
                      }
                }else{
                     if(j==1||j==lineNum||j==lineNum-i+1){
                         System.out.print(ch+"\t");
                      }else{
                        System.out.print("\t");
                      }
//                    i-j: 5-3 6-2 7-1  j=lineNum-i+1

                }

                }


            }
            System.out.println();
        }
    }

效果:
在这里插入图片描述
第四个图形function:

 public static void numberFour(int lineNum,char ch){
                   //判断奇数偶数
                if(lineNum%2==0){
                    lineNum+=1;//变成奇数
                }
                for(int i=1; i<=lineNum;i++){
                    for(int j=1;j<=lineNum;j++){
                        if(i==1||i==lineNum){
                            System.out.print(ch+"\t");
                        }else{
                            if(j==1||j==lineNum||j==i||j==lineNum-i+1){
                                System.out.print(ch+"\t");
                            }else{
                                System.out.print("\t");
                            }
                        }
//                        System.out.print(ch+"\t");
                    }
                    System.out.println();
                }

    }

效果:
在这里插入图片描述
第五个图形function:

 public static void nextclassOne(int lineNum,char ch){
            int count=1;
            //判断奇数偶数
                if(lineNum%2==0){
                    lineNum+=1;//变成奇数
                }
                for(int i=1; i<=lineNum;i++){
                    for(int j=1;j<=lineNum;j++) {
                        if(i<=lineNum/2+1){
                            if (j == 1 || j == lineNum || j <= i || j >= lineNum - i + 1) {
                                System.out.print(count++ + "\t");
                            } else {
                                System.out.print("\t");
                            }
                        }else{
                            if (j == 1 || j == lineNum||j<=lineNum-i+1||j>=i) {
                                System.out.print(count++ + "\t");
                            } else {
                                System.out.print("\t");
                            }
                        }
                    }
                    System.out.println();
                }

    }

效果:
在这里插入图片描述
第六个图形function:

  public static  void nextclassTwo(int lineNum,char ch){
         //判断奇数偶数
                if(lineNum%2==0){
                    lineNum+=1;//变成奇数
                }
                for(int i=1; i<=lineNum;i++){
                    for(int j=1;j<=lineNum;j++) {
                           if(i==lineNum/2+1){
                               System.out.print(ch+"\t");
                           }else{
                               if(i<=lineNum/2+1){
                                    if(j==lineNum/2+1||j==lineNum/2-i+2||j==lineNum/2+i){
                                       System.out.print(ch+"\t");
                                    }else{
                                       System.out.print("\t");
                                    }
                               }else{
                                    if(j==lineNum/2+1||j==i-(lineNum/2+1)+1||j==lineNum/2+1+lineNum-i){
                                        //j==i-(lineNum/2+1) 通过中轴和i j综合计算
                                       System.out.print(ch+"\t");
                                    }else{
                                       System.out.print("\t");
                                    }

                               }

                           }


                    }
                    System.out.println();
                }
    }

效果:
在这里插入图片描述
最后一个图形function:

 public static  void nextclassThree(int lineNum,char ch){
            int count=1;
//            System.out.print(printChar(count++));
           //判断奇数偶数
                if(lineNum%2==0){
                    lineNum+=1;//变成奇数
                }
                for(int i=1;i<=lineNum;i++){
                    for(int j=1;j<=lineNum;j++){
                        if(i==lineNum/2+1){
                            System.out.print(printChar(count++)+"\t");
                        }else{
                            if(i<lineNum/2+1){
                             if(j==lineNum/2+1||j==i||j==lineNum-i+1){
                              System.out.print(printChar(count++)+"\t");
                             }else{
                                  System.out.print("\t");
                             }
                            }else if(i>lineNum/2+1){
                                if(j==lineNum/2+1||j==lineNum-i+1||j==i){
                                  System.out.print(printChar(count++)+"\t");
                                 }else{
                                      System.out.print("\t");
                                 }
                            }


                        }

                    }
                    System.out.println();
                }

    }
    public static char  printChar(int step){
    //动态的改变打印的字符
       int flag=step%3;
       char ret=' ';
        if(flag==1){
           ret = '#';
        }else if(flag==2){
            ret= '$';
        }else if(flag==0){
            ret = '@';
        }
        return ret;
    }

效果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智者_若愚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值